Transmission puncturing schemes for rateless coding

ABSTRACT

This disclosure provides systems, methods and apparatus, including computer programs encoded on computer storage media, for signaling mechanisms associated with transmission puncturing schemes for rateless coding. In some aspects, a transmitting device may encode a message using a rateless code associated with a cumulative encoding of various portions of the message and may perform transmission puncturing to adapt a bit rate of related signal transmissions. The transmitting device may signal an indication of the transmission puncturing scheme, and potentially one or more modifications to the transmission puncturing scheme, to a receiving device via control signaling. The transmitting device may modify the transmission puncturing scheme in accordance with prioritizing retransmissions for some cumulative portions of the message ahead of other cumulative portions, such as by granting prioritized cumulative portions of the message relatively earlier transmission occasions in the transmission puncturing scheme.

TECHNICAL FIELD

This disclosure relates to wireless communications, including transmission puncturing schemes for rateless coding.

DESCRIPTION OF THE RELATED TECHNOLOGY

Wireless communications systems are widely deployed to provide various types of communication content such as voice, video, packet data, messaging, broadcast, and so on. These systems may be capable of supporting communication with multiple users by sharing the available system resources (such as time, frequency, and power). Examples of such multiple-access systems include fourth generation (4G) systems such as Long Term Evolution (LTE) systems, LTE-Advanced (LTE-A) systems, or LTE-A Pro systems, and fifth generation (5G) systems which may be referred to as New Radio (NR) systems. These systems may employ technologies such as code division multiple access (CDMA), time division multiple access (TDMA), frequency division multiple access (FDMA), orthogonal FDMA (OFDMA), or discrete Fourier transform spread orthogonal frequency division multiplexing (DFT-S-OFDM). A wireless multiple-access communications system may include one or more base stations (BSs) or one or more network access nodes, each simultaneously supporting communication for multiple communication devices, which may be otherwise known as user equipment (UE).

SUMMARY

The systems, methods and devices of this disclosure each have several innovative aspects, no single one of which is solely responsible for the desirable attributes disclosed herein.

One innovative aspect of the subject matter described in this disclosure can be implemented in a method for wireless communications at a wireless device. The method may include receiving an indication of a transmission puncturing scheme associated with a rateless coding of communications and receiving one or more signals associated with a message encoded in accordance with the rateless coding, where the received one or more signals are associated with an encoding that corresponds to the indicated transmission puncturing scheme.

Another innovative aspect of the subject matter described in this disclosure can be implemented in an apparatus for wireless communications at a wireless device. The apparatus may include a first interface, a second interface, and a processing system. The first interface may be configured to obtain an indication of a transmission puncturing scheme associated with a rateless coding of communications and obtain one or more signals associated with a message encoded in accordance with the rateless coding, where the received one or more signals are associated with an encoding that corresponds to the indicated transmission puncturing scheme.

Another innovative aspect of the subject matter described in this disclosure can be implemented in an apparatus for wireless communications at a wireless device. The apparatus may include a processor, memory coupled with the processor, and instructions stored in the memory. The instructions may be executable by the processor to cause the apparatus to receive an indication of a transmission puncturing scheme associated with a rateless coding of communications and receive one or more signals associated with a message encoded in accordance with the rateless coding, where the received one or more signals are associated with an encoding that corresponds to the indicated transmission puncturing scheme.

Another innovative aspect of the subject matter described in this disclosure can be implemented in another apparatus for wireless communications at a wireless device. The apparatus may include means for receiving an indication of a transmission puncturing scheme associated with a rateless coding of communications and means for receiving one or more signals associated with a message encoded in accordance with the rateless coding, where the received one or more signals are associated with an encoding that corresponds to the indicated transmission puncturing scheme.

Another innovative aspect of the subject matter described in this disclosure can be implemented in a non-transitory computer-readable medium storing code for wireless communications at a wireless device. The code may include instructions executable by a processor to receive an indication of a transmission puncturing scheme associated with a rateless coding of communications and receive one or more signals associated with a message encoded in accordance with the rateless coding, where the received one or more signals are associated with an encoding that corresponds to the indicated transmission puncturing scheme.

In some implementations of the method, apparatuses, and non-transitory computer-readable medium described herein, receiving the indication of the transmission puncturing scheme may include operations, features, means, or instructions for receiving an indication of a pattern, over a set of multiple occasions of the transmission puncturing scheme, of a set of multiple coding indices of the rateless coding, each coding index of the set of multiple coding indices corresponding to a cumulative encoding of a respective quantity of message segments.

In some implementations of the method, apparatuses, and non-transitory computer-readable medium described herein, receiving the one or more signals associated with the message may include operations, features, means, or instructions for receiving a first transmission, in accordance with a first occasion of the set of multiple occasions of the transmission puncturing scheme, that may be associated with one or more first coding indices of the set of multiple coding indices and receiving a second transmission, in accordance with a second occasion of the set of multiple occasions of the transmission puncturing scheme, that may be associated with one or more second coding indices of the set of multiple coding indices that may be different than the one or more first coding indices.

In some implementations of the method, apparatuses, and non-transitory computer-readable medium described herein, the one or more first coding indices include a first coding index corresponding to a cumulative encoding of a set of multiple segments associated with an entirety of the message and the one or more second coding indices include a second coding index corresponding to a cumulative encoding of a subset of the set of multiple segments.

One innovative aspect of the subject matter described in this disclosure can be implemented in a method for wireless communications at a wireless device. The method may include transmitting an indication of a transmission puncturing scheme associated with a rateless coding of communications and transmitting one or more signals associated with a message encoded in accordance with the rateless coding, where the transmitted one or more signals are associated with an encoding that corresponds to the indicated transmission puncturing scheme.

Another innovative aspect of the subject matter described in this disclosure can be implemented in an apparatus for wireless communications at a wireless device. The apparatus may include a first interface, a second interface, and a processing system. The first interface may be configured to output an indication of a transmission puncturing scheme associated with a rateless coding of communications and output one or more signals associated with a message encoded in accordance with the rateless coding, where the transmitted one or more signals are associated with an encoding that corresponds to the indicated transmission puncturing scheme.

Another innovative aspect of the subject matter described in this disclosure can be implemented in an apparatus for wireless communications at a wireless device. The apparatus may include a processor, memory coupled with the processor, and instructions stored in the memory. The instructions may be executable by the processor to cause the apparatus to transmit an indication of a transmission puncturing scheme associated with a rateless coding of communications and transmit one or more signals associated with a message encoded in accordance with the rateless coding, where the transmitted one or more signals are associated with an encoding that corresponds to the indicated transmission puncturing scheme.

Another innovative aspect of the subject matter described in this disclosure can be implemented in another apparatus for wireless communications at a wireless device. The apparatus may include means for transmitting an indication of a transmission puncturing scheme associated with a rateless coding of communications and means for transmitting one or more signals associated with a message encoded in accordance with the rateless coding, where the transmitted one or more signals are associated with an encoding that corresponds to the indicated transmission puncturing scheme.

Another innovative aspect of the subject matter described in this disclosure can be implemented in a non-transitory computer-readable medium storing code for wireless communications at a wireless device. The code may include instructions executable by a processor to transmit an indication of a transmission puncturing scheme associated with a rateless coding of communications and transmit one or more signals associated with a message encoded in accordance with the rateless coding, where the transmitted one or more signals are associated with an encoding that corresponds to the indicated transmission puncturing scheme.

In some implementations of the method, apparatuses, and non-transitory computer-readable medium described herein, transmitting the indication of the transmission puncturing scheme may include operations, features, means, or instructions for transmitting an indication of a pattern, over a set of multiple occasions of the transmission puncturing scheme, of a set of multiple coding indices of the rateless coding, each coding index of the set of multiple coding indices corresponding to a cumulative encoding of a respective quantity of message segments.

In some implementations of the method, apparatuses, and non-transitory computer-readable medium described herein, transmitting the one or more signals associated with the message may include operations, features, means, or instructions for performing a first transmission, in accordance with a first occasion of the set of multiple occasions of the transmission puncturing scheme, that may be associated one or more first coding indices of the set of multiple coding indices and performing a second transmission, in accordance with a second occasion of the set of multiple occasions of the transmission puncturing scheme, that may be associated with one or more second coding indices of the set of multiple coding indices that may be different than the one or more first coding indices.

In some implementations of the method, apparatuses, and non-transitory computer-readable medium described herein, the one or more first coding indices include a first coding index corresponding to a cumulative encoding of a set of multiple segments associated with an entirety of the message and the one or more second coding indices include a second coding index corresponding to a cumulative encoding of a subset of the set of multiple segments.

Details of one or more implementations of the subject matter described in this disclosure are set forth in the accompanying drawings and the description below. Other features, aspects, and advantages will become apparent from the description, the drawings and the claims. Note that the relative dimensions of the following figures may not be drawn to scale.

BRIEF DESCRIPTION OF THE DRAWINGS

FIG. 1 shows an example wireless communications system that supports transmission puncturing schemes for rateless coding.

FIG. 2 shows an example signaling diagram that supports transmission puncturing schemes for rateless coding.

FIG. 3 shows an example rateless coding scheme that supports transmission puncturing schemes for rateless coding.

FIG. 4 shows example mapping functions that support transmission puncturing schemes for rateless coding.

FIG. 5 shows an example puncturing scheme that supports transmission puncturing schemes for rateless coding.

FIGS. 6 and 7 show example decoding schemes that support transmission puncturing schemes for rateless coding.

FIG. 8 shows an example puncturing scheme adaptation that supports transmission puncturing schemes for rateless coding.

FIG. 9 shows an example process flow that supports transmission puncturing schemes for rateless coding.

FIGS. 10 and 11 show block diagrams of example devices that support transmission puncturing schemes for rateless coding.

FIGS. 12 and 13 show flowcharts illustrating example methods that support transmission puncturing schemes for rateless coding.

Like reference numbers and designations in the various drawings indicate like elements.

DETAILED DESCRIPTION

The following description is directed to some implementations for the purposes of describing the innovative aspects of this disclosure. However, a person having ordinary skill in the art will readily recognize that the teachings herein can be applied in a multitude of different ways. The described implementations may be implemented in any device, system or network that is capable of transmitting and receiving radio frequency (RF) signals according to any of the Institute of Electrical and Electronics Engineers (IEEE) 16.11 standards, or any of the IEEE 802.11 standards, the Bluetooth® standard, code division multiple access (CDMA), frequency division multiple access (FDMA), time division multiple access (TDMA), Global System for Mobile communications (GSM), GSM/General Packet Radio Service (GPRS), Enhanced Data GSM Environment (EDGE), Terrestrial Trunked Radio (TETRA), Wideband-CDMA (W-CDMA), Evolution Data Optimized (EV-DO), 1×EV-DO, EV-DO Rev A, EV-DO Rev B, High Speed Packet Access (HSPA), High Speed Downlink Packet Access (HSDPA), High Speed Uplink Packet Access (HSUPA), Evolved High Speed Packet Access (HSPA+), Long Term Evolution (LTE), AMPS, or other known signals that are used to communicate within a wireless, cellular or internet of things (IOT) network, such as a system utilizing third generation (3G), fourth generation (4G) or fifth generation (5G), or further implementations thereof, technology.

In some wireless communications systems, communicating devices may use a rateless coding scheme, such as a spinal coding scheme, for rate adaptation that avoids relying on channel state information (CSI) reference signal (CSI-RS) measurements and reports, among other channel estimation techniques. Such rate adaptation using a rateless coding scheme may enable communicating devices to more-efficiently approach a channel capacity in terms of bit rate or channel rate, including for frequency selective or time selective channels. Some systems may implement an incremental redundancy scheme, such as a multi incremental redundancy scheme (MIRS), to support rate adaptation for signaling associated with a rateless coding scheme, where such a scheme may use incremental redundancy hybrid automatic repeat request (IR-HARQ) transmissions (such as multiple negative acknowledgements (NACKs)) to lower a bit rate until the bit rate is sustained by a channel (as may be evidenced by an acknowledgement (ACK)).

In accordance with one or more aspects of the present disclosure, rate adaptation (such a progressive lowering of a bit rate via IR-HARQ transmissions or an MIRS) may be supported by employing a transmission puncturing scheme, according to which a transmitting device (such as an encoding device) may transmit signals associated with a message, or segments thereof, that are encoded using different coding rates of a rateless coding scheme. In some implementations, such a transmission puncturing scheme may be associated with a configured or signaled order or pattern, according to which different cumulatively encoded portions of a message may be transmitted over various transmission occasions. Each of the transmission occasions may be mapped to one or more coding indices of the rateless coding scheme, such that each of the transmission occasions may be associated with a different coding rate of a given message, or associated with a cumulative encoding of a different quantity of message segments, among other examples.

In some implementations of the present disclosure, a transmitting device (such as an encoding device) and a receiving device (such as a decoding device) may support one or more signaling mechanisms according to which the devices may convey information associated with a transmission puncturing scheme for messages encoded using a rateless coding scheme, and according to which the devices may exchange information associated with updates or modifications to a transmission puncturing scheme. For example, a transmitting device may select a transmission puncturing scheme (such as from a list of available transmission puncturing schemes or in accordance with a pre-configuration) and may transmit an indication of the selected transmission puncturing scheme to a receiving device. A transmitting device, or a receiving device, or both may monitor a decoding metric (or a potential decoding metric, if at a transmitting device) and may update or modify the transmission puncturing scheme in accordance with the decoding metric or potential decoding metric, where applicable. A transmitting device may transmit an indication of a transmission puncturing scheme, or an updated transmission puncturing scheme, via downlink control information (DCI), radio resource control (RRC) signaling, or any combination thereof. For example, a transmitting device may configure one or more parameters within a DCI message or an RRC message to add or incorporate an indication of a transmission puncturing scheme into any of such messages.

In some implementations, a transmitting device, during encoding, may evaluate potential decoding hypotheses that a receiving device may be likely to attempt and, if the transmitting device detects that any of the potential decoding hypotheses may be likely to cause the receiving device to diverge from decoding a correct codeword, the transmitting device may mark those decoding hypotheses. The transmitting device may update a transmission puncturing scheme to retransmit a modulation symbol associated with the marked decoding hypotheses (such as during a next occasion in the transmission puncturing scheme) and may indicate the update to a receiving device. Additionally, or alternatively, a receiving device may detect a decoding stage at which a decoding metric begins to increase, or otherwise exceeds a threshold, which may be indicative of a divergence of the receiving device from a decoding of a correct codeword, and may transmit a request to a transmitting device to update the transmission puncturing scheme such that a modulation symbol associated with the detected decoding stage is scheduled for a retransmission (such as during a next occasion in the transmission puncturing scheme). The transmitting device may update the transmission puncturing scheme in accordance with the request from the receiving device.

Particular implementations of the subject matter described in this disclosure can be implemented to realize one or more of the following potential advantages. For example, as a result of supporting one or more signaling mechanisms (such as DCI-based signaling mechanisms or RRC-based signaling mechanisms, or any combination thereof) in accordance with examples as disclosed herein, communicating devices may achieve a common understanding of a transmission puncturing scheme associated with a rateless coding scheme, which may support various techniques and scenarios for rate adaptation. In various implementations, the communicating devices may use a common understanding of the transmission puncturing scheme to reduce complexity at a decoder, or to reduce a likelihood of improper or inaccurate decoding, or to adapt a coding rate for signals of a given channel, any of which may support a greater likelihood for successful communication between the communicating devices. Further, as a result of adding an indication of a transmission puncturing scheme into DCI or RRC messages via a parameter configuration, communicating devices may exchange more robust and informative control signaling. As a result of such a greater likelihood for successful communication and more robust and informative control signaling, communicating devices may perform fewer retransmissions and associated signaling, communicate with reduced latency, or communicate with greater spectral efficiency. Likewise, communicating devices may further experience increased reliability, greater system throughput, and higher data rates, among other benefits.

FIG. 1 shows an example wireless communications system 100 that supports transmission puncturing schemes for rateless coding. The wireless communications system 100 may include one or more base stations (BSs) 105, one or more UEs 115, and a core network 130. In some implementations, the wireless communications system 100 may be a Long Term Evolution (LTE) network, an LTE-Advanced (LTE-A) network, an LTE-A Pro network, or a New Radio (NR) network. In some implementations, the wireless communications system 100 may support enhanced broadband communications, ultra-reliable (such as mission expected) communications, low latency communications, communications with low-cost and low-complexity devices, or any combination thereof.

The BSs 105 may be dispersed throughout a geographic area to form the wireless communications system 100 and may be devices in different forms or having different capabilities. The BSs 105 and the UEs 115 may wirelessly communicate via one or more communication links 125. Each BS 105 may provide a coverage area 110 over which the UEs 115 and the BS 105 may establish one or more communication links 125. The coverage area 110 may be an example of a geographic area over which a BS 105 and a UE 115 may support the communication of signals according to one or more radio access technologies.

The UEs 115 may be dispersed throughout a coverage area 110 of the wireless communications system 100, and each UE 115 may be stationary, or mobile, or both at different times. The UEs 115 may be devices in different forms or having different capabilities. Some example UEs 115 are illustrated in FIG. 1 . The UEs 115 described herein may be able to communicate with various types of devices, such as other UEs 115, the BSs 105, or network equipment (such as core network nodes, relay devices, integrated access and backhaul (IAB) nodes, or other network equipment), as shown in FIG. 1 .

The BSs 105 may communicate with the core network 130, or with one another, or both. For example, the BSs 105 may interface with the core network 130 through one or more backhaul links 120 (such as via an S1, N2, N3, or another interface). The BSs 105 may communicate with one another over the backhaul links 120 (such as via an X2, Xn, or another interface) either directly (such as directly between BSs 105), or indirectly (such as via core network 130), or both. In some implementations, the backhaul links 120 may be or include one or more wireless links.

One or more of the BSs 105 described herein may include or may be referred to by a person having ordinary skill in the art as a base transceiver station, a radio BS, an access point, a radio transceiver, a NodeB, an eNodeB (eNB), a next-generation NodeB or a giga-NodeB (either of which may be referred to as a gNB), a Home NodeB, a Home eNodeB, or other suitable terminology.

A UE 115 may include or may be referred to as a mobile device, a wireless device, a remote device, a handheld device, or a subscriber device, or some other suitable terminology, where the “device” also may be referred to as a unit, a station, a terminal, or a client, among other examples. A UE 115 also may include or may be referred to as a personal electronic device such as a cellular phone, a personal digital assistant (PDA), a tablet computer, a laptop computer, or a personal computer. In some implementations, a UE 115 may include or be referred to as a wireless local loop (WLL) station, an Internet of Things (IoT) device, an Internet of Everything (IoE) device, or a machine type communications (MTC) device, among other examples, which may be implemented in various objects such as appliances, or vehicles, meters, among other implementations.

The UEs 115 described herein may be able to communicate with various types of devices, such as other UEs 115 that may sometimes act as relays as well as the BSs 105 and the network equipment including macro eNBs or gNBs, small cell eNBs or gNBs, or relay BSs, among other implementations, as shown in FIG. 1 .

The UEs 115 and the BSs 105 may wirelessly communicate with one another via one or more communication links 125 over one or more carriers. The term “carrier” may refer to a set of radio frequency spectrum resources having a defined physical layer structure for supporting the communication links 125. For example, a carrier used for a communication link 125 may include a portion of a radio frequency spectrum band (such as a bandwidth part (BWP)) that is operated according to one or more physical layer channels for a given radio access technology (such as LTE, LTE-A, LTE-A Pro, NR). Each physical layer channel may carry acquisition signaling (such as synchronization signals, system information), control signaling that coordinates operation for the carrier, user data, or other signaling. The wireless communications system 100 may support communication with a UE 115 using carrier aggregation (CA) or multi-carrier operation. A UE 115 may be configured with multiple downlink component carriers and one or more uplink component carriers according to a CA configuration. CA may be used with both frequency division duplexing (FDD) and time division duplexing (TDD) component carriers.

Signal waveforms transmitted over a carrier may be made up of multiple subcarriers (such as using multi-carrier modulation (MCM) techniques such as orthogonal frequency division multiplexing (OFDM) or discrete Fourier transform spread OFDM (DFT-S-OFDM)). In a system employing MCM techniques, a resource element may include one symbol period (such as a duration of one modulation symbol) and one subcarrier, where the symbol period and subcarrier spacing are inversely related. The quantity of bits carried by each resource element may depend on the modulation scheme (such as the order of the modulation scheme, the coding rate of the modulation scheme, or both). Thus, the more resource elements that a UE 115 receives and the higher the order of the modulation scheme, the higher the data rate may be for the UE 115. A wireless communications resource may refer to a combination of a radio frequency spectrum resource, a time resource, and a spatial resource (such as spatial layers or beams), and the use of multiple spatial layers may further increase the data rate or data integrity for communications with a UE 115.

One or more numerologies for a carrier may be supported, where a numerology may include a subcarrier spacing (Δf) and a cyclic prefix. A carrier may be divided into one or more BWPs having the same or different numerologies. In some implementations, a UE 115 may be configured with multiple BWPs. In some implementations, a single BWP for a carrier may be active at a given time and communications for the UE 115 may be restricted to one or more active BWPs.

The time intervals for the BSs 105 or the UEs 115 may be expressed in multiples of a basic time unit which may, for example, refer to a sampling period of T_(s)=1/(Δf_(max)·N_(f)) seconds, where Δf_(max) may represent the maximum supported subcarrier spacing, and N_(f) may represent the maximum supported discrete Fourier transform (DFT) size. Time intervals of a communications resource may be organized according to radio frames each having a specified duration (such as 10 milliseconds (ms)). Each radio frame may be identified by a system frame number (SFN) (such as ranging from 0 to 1023).

Each frame may include multiple consecutively numbered subframes or slots, and each subframe or slot may have the same duration. In some implementations, a frame may be divided (such as in the time domain) into subframes, and each subframe may be further divided into a number of slots. Alternatively, each frame may include a variable number of slots, and the number of slots may depend on subcarrier spacing. Each slot may include a number of symbol periods (such as depending on the length of the cyclic prefix prepended to each symbol period). In some wireless communications systems 100, a slot may further be divided into multiple mini-slots containing one or more symbols. Excluding the cyclic prefix, each symbol period may contain one or more (such as N_(f)) sampling periods. The duration of a symbol period may depend on the subcarrier spacing or frequency band of operation.

A subframe, a slot, a mini-slot, or a symbol may be the smallest scheduling unit (such as in the time domain) of the wireless communications system 100 and may be referred to as a transmission time interval (TTI). In some implementations, the TTI duration (such as the number of symbol periods in a TTI) may be variable. Additionally, or alternatively, the smallest scheduling unit of the wireless communications system 100 may be dynamically selected (such as in bursts of shortened TTIs (sTTIs)).

Physical channels may be multiplexed on a carrier according to various techniques. A physical control channel and a physical data channel may be multiplexed on a downlink carrier, for example, using one or more of time division multiplexing (TDM) techniques, frequency division multiplexing (FDM) techniques, or hybrid TDM-FDM techniques. A control region (such as a control resource set (CORESET)) for a physical control channel may be defined by a number of symbol periods and may extend across the system bandwidth or a subset of the system bandwidth of the carrier. One or more control regions (such as CORESETs) may be configured for a set of the UEs 115. For example, one or more of the UEs 115 may monitor or search control regions for control information according to one or more search space sets, and each search space set may include one or multiple control channel candidates in one or more aggregation levels arranged in a cascaded manner. An aggregation level for a control channel candidate may refer to a number of control channel resources (such as control channel elements (CCEs)) associated with encoded information for a control information format having a given payload size. Search space sets may include common search space sets configured for sending control information to multiple UEs 115 and UE-specific search space sets for sending control information to a specific UE 115.

Each BS 105 may provide communication coverage via one or more cells, for example a macro cell, a small cell, a hot spot, or other types of cells, or any combination thereof. The term “cell” may refer to a logical communication entity used for communication with a BS 105 (such as over a carrier) and may be associated with an identifier for distinguishing neighboring cells (such as a physical cell identifier (PCID), a virtual cell identifier (VCID), or others). In some implementations, a cell also may refer to a geographic coverage area 110 or a portion of a geographic coverage area 110 (such as a sector) over which the logical communication entity operates. Such cells may range from smaller areas (such as a structure, a subset of structure) to larger areas depending on various factors such as the capabilities of the BS 105. For example, a cell may be or include a building, a subset of a building, or exterior spaces between or overlapping with geographic coverage areas 110, among other implementations.

In some implementations, a BS 105 may be movable and therefore provide communication coverage for a moving geographic coverage area 110. In some implementations, different geographic coverage areas 110 associated with different technologies may overlap, but the different geographic coverage areas 110 may be supported by the same BS 105. In some other implementations, the overlapping geographic coverage areas 110 associated with different technologies may be supported by different BSs 105. The wireless communications system 100 may include, for example, a heterogeneous network in which different types of the BSs 105 provide coverage for various geographic coverage areas 110 using the same or different radio access technologies.

The wireless communications system 100 may be configured to support ultra-reliable communications or low-latency communications, or various combinations thereof. For example, the wireless communications system 100 may be configured to support ultra-reliable low-latency communications (URLLC) or mission critical communications. The UEs 115 may be designed to support ultra-reliable, low-latency, or critical functions (such as mission critical functions). Ultra-reliable communications may include private communication or group communication and may be supported by one or more mission critical services such as mission critical push-to-talk (MCPTT), mission critical video (MCVideo), or mission critical data (MCData). Support for mission critical functions may include prioritization of services, and mission critical services may be used for public safety or general commercial applications. The terms ultra-reliable, low-latency, mission critical, and ultra-reliable low-latency may be used interchangeably herein.

In some implementations, a UE 115 also may be able to communicate directly with other UEs 115 over a device-to-device (D2D) communication link 135 (such as using a peer-to-peer (P2P) or D2D protocol). One or more UEs 115 utilizing D2D communications may be within the geographic coverage area 110 of a BS 105. Other UEs 115 in such a group may be outside the geographic coverage area 110 of a BS 105 or be otherwise unable to receive transmissions from a BS 105. In some implementations, groups of the UEs 115 communicating via D2D communications may utilize a one-to-many (1:M) system in which each UE 115 transmits to every other UE 115 in the group. In some implementations, a BS 105 facilitates the scheduling of resources for D2D communications. In some other implementations, D2D communications are carried out between the UEs 115 without the involvement of a BS 105.

The core network 130 may provide user authentication, access authorization, tracking, Internet Protocol (IP) connectivity, and other access, routing, or mobility functions. The core network 130 may be an evolved packet core (EPC) or 5G core (5GC), which may include at least one control plane entity that manages access and mobility (such as a mobility management entity (MME), an access and mobility management function (AMF)) and at least one user plane entity that routes packets or interconnects to external networks (such as a serving gateway (S-GW), a Packet Data Network (PDN) gateway (P-GW), or a user plane function (UPF)). The control plane entity may manage non-access stratum (NAS) functions such as mobility, authentication, and bearer management for the UEs 115 served by the BSs 105 associated with the core network 130. User IP packets may be transferred through the user plane entity, which may provide IP address allocation as well as other functions. The user plane entity may be connected to IP services 150 for one or more network operators. The IP services 150 may include access to the Internet, Intranet(s), an IP Multimedia Subsystem (IMS), or a Packet-Switched Streaming Service.

Some of the network devices, such as a BS 105, may include subcomponents such as an access network entity 140, which may be an example of an access node controller (ANC). Each access network entity 140 may communicate with the UEs 115 through one or more other access network transmission entities 145, which may be referred to as radio heads, smart radio heads, or transmission/reception points (TRPs). Each access network transmission entity 145 may include one or more antenna panels. In some configurations, various functions of each access network entity 140 or BS 105 may be distributed across various network devices (such as radio heads and ANCs) or consolidated into a single network device (such as a BS 105). In various implementations, a BS 105, or an access network entity 140, or a core network 130, or some subcomponent thereof, may be referred to as a network entity.

As described herein, a BS 105 may include one or more components that are located at a single physical location or one or more components located at various physical locations. In examples in which the BS 105 includes components that are located at various physical locations, the various components may each perform various functions such that, collectively, the various components achieve functionality that is similar to a BS 105 that is located at a single physical location. As such, a BS 105 described herein may equivalently refer to a standalone BS 105 (also known as a monolithic BS) or a BS 105 including components that are located at various physical locations or virtualized locations (also known as a disaggregated BS). In some implementations, such a BS 105 including components that are located at various physical locations may be referred to as or may be associated with a disaggregated radio access network (RAN) architecture, such as an Open RAN (O-RAN) or Virtualized RAN (VRAN) architecture. In some implementations, such components of a BS 105 may include or refer to one or more of a central unit (or centralized unit CU), a distributed unit (DU), or a radio unit (RU).

The wireless communications system 100 may operate using one or more frequency bands, sometimes in the range of 300 megahertz (MHz) to 300 gigahertz (GHz). Generally, the region from 300 MHz to 3 GHz is known as the ultra-high frequency (UHF) region or decimeter band because the wavelengths range from approximately one decimeter to one meter in length. The UHF waves may be blocked or redirected by buildings and environmental features, but the waves may penetrate structures sufficiently for a macro cell to provide service to the UEs 115 located indoors. The transmission of UHF waves may be associated with smaller antennas and shorter ranges (such as less than 100 kilometers) compared to transmission using the smaller frequencies and longer waves of the high frequency (HF) or very high frequency (VHF) portion of the spectrum below 300 MHz.

The wireless communications system 100 also may operate in a super high frequency (SHF) region using frequency bands from 3 GHz to 30 GHz, also known as the centimeter band, or in an extremely high frequency (EHF) region of the spectrum (such as from 30 GHz to 300 GHz), also known as the millimeter band. In some implementations, the wireless communications system 100 may support millimeter wave (mmW) communications between the UEs 115 and the BSs 105, and EHF antennas of the respective devices may be smaller and more closely spaced than UHF antennas. In some implementations, this may facilitate use of antenna arrays within a device. The propagation of EHF transmissions, however, may be subject to even greater atmospheric attenuation and shorter range than SHF or UHF transmissions. The techniques disclosed herein may be employed across transmissions that use one or more different frequency regions, and designated use of bands across these frequency regions may differ by country or regulating body.

The wireless communications system 100 may utilize both licensed and unlicensed radio frequency spectrum bands. For example, the wireless communications system 100 may employ License Assisted Access (LAA), LTE-Unlicensed (LTE-U) radio access technology, or NR technology in an unlicensed band such as the 5 GHz industrial, scientific, and medical (ISM) band. When operating in unlicensed radio frequency spectrum bands, devices such as the BSs 105 and the UEs 115 may employ carrier sensing for collision detection and avoidance. In some implementations, operations in unlicensed bands may be based on a CA configuration in conjunction with component carriers operating in a licensed band (such as LAA). Operations in unlicensed spectrum may include downlink transmissions, uplink transmissions, P2P transmissions, or D2D transmissions, among other transmissions.

ABS 105 or a UE 115 may be equipped with multiple antennas, which may be used to employ techniques such as transmit diversity, receive diversity, multiple-input multiple-output (MIMO) communications, or beamforming. The antennas of a BS 105 or a UE 115 may be located within one or more antenna arrays or antenna panels, which may support MIMO operations or transmit or receive beamforming. For example, one or more BS antennas or antenna arrays may be co-located at an antenna assembly, such as an antenna tower. In some implementations, antennas or antenna arrays associated with a BS 105 may be located in diverse geographic locations. A BS 105 may have an antenna array with a number of rows and columns of antenna ports that the BS 105 may use to support beamforming of communications with a UE 115. Likewise, a UE 115 may have one or more antenna arrays that may support various MIMO or beamforming operations. Additionally, or alternatively, an antenna panel may support radio frequency beamforming for a signal transmitted via an antenna port.

The BSs 105 or the UEs 115 may use MIMO communications to exploit multipath signal propagation and increase the spectral efficiency by transmitting or receiving multiple signals via different spatial layers. Such techniques may be referred to as spatial multiplexing. The multiple signals may, for example, be transmitted by the transmitting device via different antennas or different combinations of antennas. Likewise, the multiple signals may be received by the receiving device via different antennas or different combinations of antennas. Each of the multiple signals may be referred to as a separate spatial stream and may carry bits associated with the same data stream (such as the same codeword) or different data streams (such as different codewords). Different spatial layers may be associated with different antenna ports used for channel measurement and reporting. MIMO techniques include single-user MIMO (SU-MIMO), where multiple spatial layers are transmitted to the same receiving device, and multiple-user MIMO (MU-MIMO), where multiple spatial layers are transmitted to multiple devices.

Beamforming, which also may be referred to as spatial filtering, directional transmission, or directional reception, is a signal processing technique that may be used at a transmitting device or a receiving device (such as a BS 105, a UE 115) to shape or steer an antenna beam (such as a transmit beam, a receive beam) along a spatial path between the transmitting device and the receiving device. Beamforming may be achieved by combining the signals communicated via antenna elements of an antenna array such that some signals propagating at particular orientations with respect to an antenna array experience constructive interference while others experience destructive interference. The adjustment of signals communicated via the antenna elements may include a transmitting device or a receiving device applying amplitude offsets, phase offsets, or both to signals carried via the antenna elements associated with the device. The adjustments associated with each of the antenna elements may be defined by a beamforming weight set associated with a particular orientation (such as with respect to the antenna array of the transmitting device or receiving device, or with respect to some other orientation).

A BS 105 or a UE 115 may use beam sweeping techniques as part of beam forming operations. For example, a BS 105 may use multiple antennas or antenna arrays (such as antenna panels) to conduct beamforming operations for directional communications with a UE 115. Some signals (such as synchronization signals, reference signals, beam selection signals, or other control signals) may be transmitted by a BS 105 multiple times in different directions. For example, the BS 105 may transmit a signal according to different beamforming weight sets associated with different directions of transmission. Transmissions in different beam directions may be used to identify (such as by a transmitting device, such as a BS 105, or by a receiving device, such as a UE 115) a beam direction for later transmission or reception by the BS 105.

Some signals, such as data signals associated with a particular receiving device, may be transmitted by a BS 105 in a single beam direction (such as a direction associated with the receiving device, such as a UE 115). In some implementations, the beam direction associated with transmissions along a single beam direction may be determined based on a signal that was transmitted in one or more beam directions. For example, a UE 115 may receive one or more of the signals transmitted by the BS 105 in different directions and may report to the BS 105 an indication of the signal that the UE 115 received with a highest signal quality or an otherwise acceptable signal quality.

In some implementations, transmissions by a device (such as by a BS 105 or a UE 115) may be performed using multiple beam directions, and the device may use a combination of digital precoding or radio frequency beamforming to generate a combined beam for transmission (such as from a BS 105 to a UE 115). The UE 115 may report feedback that indicates precoding weights for one or more beam directions, and the feedback may correspond to a configured number of beams across a system bandwidth or one or more sub-bands. The BS 105 may transmit a reference signal (such as a cell-specific reference signal (CRS), a channel state information reference signal (CSI-RS)), which may be precoded or unprecoded. The UE 115 may provide feedback for beam selection, which may be a precoding matrix indicator (PMI) or codebook-based feedback (such as a multi-panel type codebook, a linear combination type codebook, a port selection type codebook). Although these techniques are described with reference to signals transmitted in one or more directions by a BS 105, a UE 115 may employ similar techniques for transmitting signals multiple times in different directions (such as for identifying a beam direction for subsequent transmission or reception by the UE 115) or for transmitting a signal in a single direction (such as for transmitting data to a receiving device).

A receiving device (such as a UE 115) may try multiple receive configurations (such as directional listening) when receiving various signals from the BS 105, such as synchronization signals, reference signals, beam selection signals, or other control signals. For example, a receiving device may try multiple receive directions by receiving via different antenna subarrays, by processing received signals according to different antenna subarrays, by receiving according to different receive beamforming weight sets (such as different directional listening weight sets) applied to signals received at multiple antenna elements of an antenna array, or by processing received signals according to different receive beamforming weight sets applied to signals received at multiple antenna elements of an antenna array, any of which may be referred to as “listening” according to different receive configurations or receive directions. In some implementations, a receiving device may use a single receive configuration to receive along a single beam direction (such as when receiving a data signal). The single receive configuration may be aligned in a beam direction determined based on listening according to different receive configuration directions (such as a beam direction determined to have a highest signal strength, highest signal-to-noise ratio (SNR), or otherwise acceptable signal quality based on listening according to multiple beam directions).

The wireless communications system 100 may be a packet-based network that operates according to a layered protocol stack. In the user plane, communications at the bearer or Packet Data Convergence Protocol (PDCP) layer may be IP-based. A Radio Link Control (RLC) layer may perform packet segmentation and reassembly to communicate over logical channels. A Medium Access Control (MAC) layer may perform priority handling and multiplexing of logical channels into transport channels. The MAC layer also may use error detection techniques, error correction techniques, or both to support retransmissions at the MAC layer to improve link efficiency. In the control plane, the RRC protocol layer may provide establishment, configuration, and maintenance of an RRC connection between a UE 115 and a BS 105 or a core network 130 supporting radio bearers for user plane data. At the physical layer, transport channels may be mapped to physical channels.

The UEs 115 and the BSs 105 may support retransmissions of data to increase the likelihood that data is received successfully. Hybrid automatic repeat request (HARQ) feedback is one technique for increasing the likelihood that data is received correctly over a communication link 125. HARQ may include a combination of error detection (such as using a cyclic redundancy check (CRC)), forward error correction (FEC), and retransmission (such as automatic repeat request (ARQ)). HARQ may improve throughput at the MAC layer in poor radio conditions (such as low signal-to-noise conditions). In some implementations, a device may support same-slot HARQ feedback, where the device may provide HARQ feedback in a specific slot for data received in a previous symbol in the slot. In some other implementations, the device may provide HARQ feedback in a subsequent slot, or according to some other time interval.

In some implementations, communicating devices may employ an incremental redundancy scheme, such as an MIRS, which also may be referred to as an MRS, to reduce a gap between a suitable or optimal link adaptation and link adaptation performance associated with some other schemes. In some aspects, MIRS may be associated with rateless codes to achieve better performance across coding rates (and IR-HARQ transmissions) relative to fixed rate codes such as low-density parity-check (LDPC) codes. Further, in addition to rate selection (such as an MCS selection), a device may employ an MIRS to facilitate selection of a precoding matrix indicator (PMI) and a rank indicator (RI).

Further, a device, using an MIRS, may rely on usage of IR-HARQ for rate or link adaptation instead of attempting to predict a channel capacity (such as via a CSI-RS measurement). For example, a transmitting device employing an MIRS may perform a first transmission corresponding to or using a highest speculated, assumed, or possible MCS for a current channel (such that if multiple options exist, the device may select a highest MCS of the multiple options) and may add a relatively small amount of redundancy for each subsequent transmission (such as each subsequent retransmission) if the first transmission fails. The transmitting device may terminate or stop transmissions (such as retransmissions) once a message is successfully decoded at a receiving device (in accordance with continuous ACK/NACK being sent to the transmitting device from the receiving device). The transmitting device may optionally use the continuous ACK/NACK received from the receiving device to adjust a wideband precoding associated with the transmitted message. In accordance with or as a result of using an MIRS, communicating devices may communicate at a code rate which is at or near a capacity (such as an upper limit code rate supported by a channel) regardless of mobility level of the communicating devices.

A transmitting device may employ different types of MIRS, including a first type associated with an adaptive MCS in accordance with an MIRS principle with fixed precoding and a second type associated with an adaptive MCS in accordance with an MIRS principle with variable precoding (such as a variable precoding facilitated by continuous feedback). In some implementations, a transmitting device may achieve a higher data rate using an MIRS as compared to a baseline selection of a highest MCS that is fixed in a CSI interval. For example, the first type of MIRS associated with a fixed precoding scheme may result in similar MCS selection at some velocities (such as a velocity of approximately 10 kilometers per hour) and more suitable MCS selection for relatively higher velocities (such as velocities greater than approximately 10 kilometers per hour) because MIRS may provide ACK/NACK per codeblock. Further, the second type of MIRS associated with an adaptive precoding may result in a higher data rate (such as by an approximately 0.6-3.1 dB gain) as compared to a baseline selection of a highest transmission power for a precoding that is fixed in a CSI interval.

Some systems, such as the wireless communications system 100, may support rateless coding schemes. Such rateless coding schemes may be associated with a rate adaptation technique that does not rely on CSI-RS-based adaptations, and may allow communicating devices, such as one or more UEs 115 or one or more components of a BS 105, to achieve or approach channel capacity even in high mobility scenarios. For example, rateless coding schemes may provide a greater capability of bit loading to approach capacity in frequency selective or time selective channels. Even for additive white Gaussian noise (AWGN), for example, rateless coding schemes may achieve higher data rates as compared to fixed rate systems (due, in part, to a hedging effect).

In some aspects, the wireless communications system 100 may implement an MIRS to support rateless coding schemes. For example, to capitalize on potential use implementations for an MIRS, communicating devices may incorporate rateless codes with the MIRS adaptation scheme. The wireless communications system 100 may support one or more types of rateless codes, including spinal codes. In some aspects, communicating devices may use a pre-defined or pre-configured puncturing scheme to support rate adaptation for rateless codes and may support one or more signaling mechanisms for exchanging information associated with a puncturing scheme or updates to a puncturing scheme. In some implementations, communicating devices may employ techniques to support an adaptive smart puncturing scheme using receiver-side feedback, or transmitter-side analysis, or both. For example, a receiving device may request a modification for a puncturing scheme to receive a retransmission of a coding index or a symbol associated with a decoding stage at which decoding by the receiving device diverged from received signaling. Further, some rateless coding, such as spinal coding, may create or otherwise be associated with unequal error probabilities between encoder stages (in accordance with a random number generator (RNG) or hash function realization). A transmitting device may be aware of statistics associated with the unequal probabilities and may tune or otherwise modify or generate a retransmission to compensate for the unequal error probabilities. For example, a transmitting device may prioritize coding indices or symbols in a retransmission associated with a relatively higher error probability as compared to other symbols.

FIG. 2 shows an example signaling diagram 200 that supports transmission puncturing schemes for rateless coding. The signaling diagram 200 may implement or be implemented to realize aspects of the wireless communications system 100. For example, the signaling diagram 200 illustrates communication between a transmitting device 205 (such an encoding device) and a receiving device 210 (such as a decoding device) that support a rateless coding of signaling between the transmitting device 205 and the receiving device 210. A transmitting device may encode a message (such as a data payload) according to a rateless coding scheme, such as a spinal coding scheme, to obtain encoded signals 215 associated with the message. Additional details relating to a rateless coding of a message are illustrated by and described with reference to FIG. 3 . In some implementations, the transmitting device 205 may transmit the encoded signals 215 in accordance with a transmission puncturing scheme associated with the rateless coding scheme, which may be supported by the transmitting device transmitting a puncturing scheme indication 225 to the receiving device 210.

For example, a transmitting device 205 may employ a transmission puncturing scheme to support spinal coding-based techniques for rate adaptation, and the transmitting device 205 and the receiving device 210 may support one or more signaling mechanisms for conveying an indication of the transmission puncturing scheme (such as for integrating signaling of the transmission puncturing scheme into NR-based signaling, including RRC or DCI signaling). In some implementations, the transmitting device 205 may select a transmission puncturing scheme in accordance with a requested initial rate (such as a rate associated with a bits per channel use metric). For example, the receiving device 210 may transmit, to the transmitting device 205, a request for an initial bit rate. In response to such a request, the transmitting device 205 may identify or otherwise determine how many symbols or encoded message segments to include in encoded signals 215 (such as for a first transmission), which may include a determination of which coding indices (such as which spines) or how many coding indices (such as a quantity of spines) of a rateless coding of a data message should be prepared for transmission. Additional details relating to the correspondence between a quantity of transmitted modulation symbols or spines and bit rates are illustrated by and described with reference to FIG. 3 . Additionally, or alternatively, the transmitting device 205 may employ an MIRS step size (such as a differential MCS) to identify or otherwise determine a quantity of modulation symbols (such as extra modulation symbols) that may be transmitted per retransmission or per codeblock, or per retransmission and per codeblock.

In some aspects, the symbols or coding indices (such as spines) that the transmitting device 205 may transmit in a first transmission (such as an initial transmission) and one or more subsequent transmissions (such as retransmissions) associated with the encoded signals 215 may be selected in accordance with a transmission puncturing scheme defined by an ordered list. The ordered list may be pre-defined or pre-configured (such as pre-loaded) at the transmitting device 205 and the receiving device 210. For example, the ordered list may be defined in a specification or communications standard. Additionally, or alternatively, the transmitting device 205 or the receiving device 210, or both, may select an ordered list out of several pre-defined or pre-configured ordered lists. For example, the transmitting device 205 or the receiving device 210 may select an ordered list for the transmission puncturing scheme out of a predefined table or out of a predefined set of tables. In such implementations in which the transmitting device 205 or the receiving device 210, or both, select an ordered list out of multiple available ordered lists, the transmitting device 205 or the receiving device 210, or both, may select the ordered list in accordance with a MIMO order, a constellation order, a mapping of data to coding indices or symbols (such as symbol durations or modulation symbols), a block size, an allocation size (such as a resource allocation size), or any combination thereof.

In some implementations, a transmitting device 205 may select the ordered list from the multiple available ordered lists and may signal the selected ordered list (and equivalently the selected transmission puncturing scheme) to a receiving device 210 via control signaling, which may be an example of a puncturing scheme indication 225. For example, the transmitting device 205 may transmit an indication of the selected ordered list via an index value (such as one or more bits) included in an RRC message or a DCI packet, such as a physical downlink control channel (PDCCH) DCI packet. In scenarios in which a transmitting device 205 transmits a total of N symbols or spines as part of transmitting the encoded signals 215, the transmitting device 205 may employ various transmission puncturing schemes. For example, as part of a first transmission puncturing scheme, a transmitting device 205 may transmit all symbols or spines (as may be denoted by a 1:1:N transmission pattern) for a first (such as initial) transmission and, in response to a retransmission request from a receiving device 210, may transmit a same pattern as before (such that an effective bit rate decreases by a factor of two for every retransmission).

For further example, as part of a second transmission puncturing scheme, a transmitting device 205 may transmit all symbols or spines (as may be denoted by a 1:1:N transmission pattern) for a first (such as initial) transmission and, in response to a retransmission request from a receiving device 210, may transmit every other symbol or spine. In such examples, the transmitting device 205 may transmit symbols or spines in accordance with a 1:2:N transmission pattern (such that the transmitting device 205 transmits either odd symbols or spines or even symbols or spines, but not both). For further example, as part of a third transmission puncturing scheme, a transmitting device 205 may transmit every other symbol or spine (such as odd or even symbols or spines, as may be denoted by a 1:2:N transmission pattern) for a first (such as initial) transmission and, in response to a retransmission request from a receiving device 210, may transmit one symbol or spine starting from symbol N up to 1 for each retransmission. In such examples, the transmitting device 205 may transmit symbol or spine N as a first retransmission, may transmit symbol or spine N−1 as a second retransmission, and may transmit symbol or spine 1 as an N^(th) retransmission.

In some implementations, a transmitting device 205 may transmit an indication of the ordered list (and equivalently the selected transmission puncturing scheme) to a receiving device 210 via an RRC message and may update the ordered list (such as periodically). The transmitting device 205 may signal an update in a puncturing scheme indication 225, which may include one or more corrections or modifications, for the transmission puncturing scheme to the receiving device 210 via a DCI message, such as a per-allocation signaling in DCI. In some implementations, the transmitting device 205 may update or modify the transmission puncturing scheme in accordance with receiver feedback, or in accordance with current transmission statistics that the transmitting device 205 may calculate (such as statistics associated with RNG or hash function realizations), or both.

For example, a spinal decoder at a receiving device 210 may support a metric computation that facilitates, in some probability, detection of first (such as relatively earliest) decoding stages (which correspond to symbols or spines) where decoding starts to diverge or where a decoding metric or a path cost exceeds a threshold. As such, a transmitting device 205 and a receiving device 210 may implement an adaptive puncturing scheme associated with receiver feedback, which may reduce a quantity of retransmissions until successful decoding (thus lowering latency for each data packet), improve spectral efficiency in accordance with feedback-based retransmission (such as by optimizing retransmission puncturing schemes in accordance with receiver feedback), and reduce decoder complexity by saving previous states (such as stages) of a decoding procedure until a retransmission state (such as a decoding stage associated with a retransmitted symbol or spine).

In such implementations, a receiving device may maintain and monitor a decoding metric and may transmit, to a transmitting device 205, a coding index indication 230 (such as a decoding stage or spine index) at which the decoding metric exceeds or otherwise satisfies a threshold decoding metric. The transmitting device 205 may update or modify the transmission puncturing scheme (such as the pre-defined or pre-configured ordered list) and may signal the updated or modified transmission puncturing scheme to the receiving device 210. Additional details relating to such a monitoring of a decoding metric and a feedback-based or feedback-triggered update or modification to the transmission puncturing scheme are illustrated by and described with reference to FIGS. 6 and 8 .

Further, in some implementations, a transmitting device 205 may estimate an unequal error probability (such as a likely or potential decoding metric) of transmitted symbols or spines at the transmitter side and may apply an adaptive puncturing scheme at the transmitter side to grant retransmission occasions in accordance with the estimated unequal error probability. For example, in addition, or as an alternative, to using pre-defined or pre-configured transmission puncturing schemes or transmission puncturing schemes that are dynamically changed or updated in accordance with receiver feedback, a transmitting device 205 may change or update (such as adapt) a transmission puncturing scheme by retransmitting symbols or spines that, during encoding, the transmitting device 205 may find to be associated with decoding metrics less than a threshold path metric, which may be likely deviate a receiving device 210 from a correct codeword.

As such, a transmitting device 205 may transmit, to a receiving device 210, a decoding hypotheses indication 220 that indicates one or more decoding hypotheses for which the receiving device 210 may calculate a decoding metric less than a threshold decoding metric but which are incorrect decoding hypotheses. The transmitting device 205 may mark symbols or spines associated with the indicated one or more decoding hypotheses for a subsequent retransmission, which may increase a likelihood that the receiving device 210 is able to accurately differentiate between a correct decoding hypothesis and the one or more indicated decoding hypotheses that may cause the decoding at the receiving device 210 to deviate from the correct decoding hypothesis. Further, and in accordance with increasing the likelihood that the receiving device 210 is able to accurately differentiate between a correct decoding hypothesis and the one or more indicated decoding hypotheses, the transmitting device 205 and the receiving device 210 may experience greater spectral efficiency in accordance with using transmitter-side statistics (such by optimizing retransmission puncturing schemes using transmitter-side statistics). Further, the transmitting device 205 may reduce an average quantity of retransmissions and the receiving device 210 may reduce a quantity of feedback transmission, which may decrease latency for each data packet. The receiving device 210 also may reduce decoder complexity by saving previous states of the decoding procedure until a retransmission state (such as by saving or consolidating decoding hypotheses for each decoding stage up until a decoding stage associated with a retransmitted symbol or spine). Additional details relating to such a transmitter side puncturing scheme adaptation are described in more detail with reference to FIG. 7 .

A transmitting device 205 may be an example of any device capable of wireless communication and, as such, may be an example of a UE 115, one or more components of a BS 105, a TRP, a small cell, or a relay node, among other examples, which may perform one or more aspects of encoding and transmitting a message in accordance with examples as disclosed herein. A receiving device 210 may be an example of any device capable of wireless communication and, as such, may be an example of a UE 115, one or more components of a BS 105, a TRP, a small cell, or a relay node, among other examples, which may perform one or more aspects of receiving and decoding a message in accordance with examples as disclosed herein. A transmitting device 205 may transmit to a receiving device 210 via a communication link 235, and such a communication link 235 may be an example of a downlink, an uplink, or a sidelink depending on which device(s) the transmitting device 205 and the receiving device 210 are examples of or otherwise function as. Similarly, a receiving device 210 may transmit to a transmitting device 205 via a communication link 240, and such a communication link 240 may be an example of a downlink, an uplink, or a sidelink depending on which device(s) the transmitting device 205 and the receiving device 210 are examples of or otherwise function as.

FIG. 3 shows an example rateless coding scheme 300 that supports transmission puncturing schemes for rateless coding. The rateless coding scheme 300 may be implemented to realize aspects of the wireless communications system 100 and the signaling diagram 200. For example, the rateless coding scheme 300 illustrates a sequential or cumulative coding of a message 305, such as a sequential or cumulative encoding of message segments 310. In some implementations, an encoder of a transmitting device 205 may employ the rateless coding scheme 300 to encode the message 305 and may perform transmissions associated with the encoded message 305 in accordance with a transmission puncturing scheme (such as transmit encoded signals 215 in accordance with the rateless coding scheme 300 and a signaled transmission puncturing scheme).

For example, the rateless coding scheme 300 may be an example of a spinal code encoding scheme or may otherwise illustrate spinal coding. Spinal codes may be a class of rateless codes that are compatible with time-varying channel conditions in a natural or simple way without use of an explicit bit rate selection. In other words, rateless coding, such as spinal coding, may be associated with an absence or lack of explicit signaling for bit rates of a transmission. For example, communicating devices may refrain from transmitting an indication of one or more aspects of an MCS while implementing rateless coding. Instead, a transmitting device 205 may use rateless codes, such as spinal codes, to perform an initial transmission of a message 305 at a high bit rate (such as a relatively highest bit rate) and, if one or more NACKs associated with the message 305 are received from a receiving device 210, to perform iterative transmission of additional information associated with the message via one or more additional transmissions (such as retransmissions), which may lower an effective bit rate until the receiving device 210 is able to successfully decode the message (such as until the transmitting device 205 receives an ACK associated with the message 305). In some aspects, such use of spinal codes may result in the transmitting device 205 performing the initial transmission at a higher rate than a channel over which the transmitting device 205 performs the transmission is able to sustain and the iterative additional transmissions (such as the iterative retransmissions) may gradually or progressively reduce the bit rate until the reduced bit rate is sustained by the channel (as may be evidenced by reception of an ACK).

In accordance with encoding techniques that implement spinal codes, a transmitting device 205 may perform the encoding of the message 305 once (which may be associated with a single generation of spines 320 for a given message 305) and may change a bit rate (which also may be referred to as a rate or as a channel rate) through some quantity of channel uses. On the other hand, in some other coding schemes, a transmitting device 205 may change a bit rate of a signal via a re-encoding of the signal (such that changing a rate may be considered as re-encoding data associated with the signal). As part of the rateless coding scheme 300, a transmitting device 205 may apply a hash function 315 (such as a random hash function) sequentially or cumulatively to bits of a message 305 (such as segments or portions of the message 305) to produce a sequence of coded bits and symbols (such as modulation symbols) for transmission. In some aspects, the transmitting device 205 may employ the encoding such that two input messages that differ in even one bit lead to different coded sequences after a point at which the two input messages differ, which may provide resilience to noise or bit errors.

As such, the rateless coding scheme 300 (a spinal coding scheme) may involve or pertain to a cumulative or sequential encoding of a message 305 across a set of message segments 310. For example, as part of the rateless coding scheme 300, a transmitting device 205 may partition or segment the message 305 into a set of message segments 310 and may cumulatively encode the message 305 across multiple stages of the rateless coding scheme 300 (each stage involving an encoding with an additional next message segment 310). In some aspects, a message 305 may include a quantity of n bits and a transmitting device 205 may partition or segment the message 305 into a set of message segments 310 such that each message segment includes k bits. In various implementations, k may be the same for each message segment 310 or may be different for some message segments 310 (such that some message segments 310 may include different quantities of bits than other message segments 310). In some aspects, and in accordance with the rateless coding scheme 300 being associated with a lack of an explicit bit rate selection, the rateless coding scheme 300 may be associated with a non-selection (by communicating devices) of the k and n parameters (as the k and n parameters may influence the bit rate of the message 305). The set of message segments 310 may accordingly include a quantity of n/k message segments 310.

For example, a transmitting device 205 may partition the message 305 into a message segment 310-a-1 (which may be referred to or denoted as a message segment m₁ or m_1) starting at bit 1 of the message 305, a message segment 310-a-2 (which may be referred to or denoted as a message segment m₂ or m_2) starting at bit k+1 of the message 305, a message segment 310-a-3 (which may be referred to or denoted as a message segment m₃ or m_3) starting at bit 2 k+1 of the message 305, and so on for each message segment 310-a of the message 305. An encoder of the transmitting device 205 may include, for each stage of the rateless coding scheme 300, a hash function 315 and a numeric transposition function, such as an RNG 325 or other scrambling function. The hash functions 315 and the RNGs 325 of the rateless coding scheme 300 may be known to both a transmitting device 205 and a receiving device 210. For example, the hash functions 315 and the RNGs 325 may be pre-configured (such as pre-loaded) at both a transmitting device 205 and a receiving device 210, or one or more aspects or configurations of such functions may be signaled between a transmitting device 205 and a receiving device 210. In some aspects, an encoder of a transmitting device 205 or a decoder of a receiving device 210, or both, may combine a hash function 315 with an RNG 325 into a single or same processing block. Moreover, although each instance of a hash function 315 and each instance of an RNG 325 are illustrated separately, in some implementations, the separately illustrated instances of a hash function 315, or an RNG 325, or both may be performed by a same set of functional instructions, or by a same set of processing circuitry, which may be performed with different inputs to provide different outputs.

A transmitting device 205 may implement a hash function 315 with two inputs including a spine 320 (which may be referred to as an encoded value and may be an example of a v bit state) and a message segment 310 (which may include a portion, chunk, or quantity of k bits of the message 305) and may obtain, as an output of a hash function 315, a new spine 320 (a new encoded value or a new v bit state). Thus, a hash function 315 may take a first input (a spine 320) of size v bits and a second input (a message segment 310) of size k bits and may output a spine 320 of size v bits. A hash function 315 may be represented by Equation 1 and a value of a spine 320 may be represented by Equation 2, where an index i may refer to or indicate a coding index or stage (such as an encoding stage or a decoding stage) and m _(i) may refer a message segment 310 corresponding to that coding index or stage i. In some aspects, s₀ (or s_0) may be an initial input spine 320 or some other initial value and may be set equal to zero, or to some other default or pre-configured value. Additionally, or alternatively, a transmitting device 205 and a receiving device 210 may coordinate (such as via an exchange of one or more signals) on a value of s_0. In some implementations, for example, a transmitting device 205 may set or configure a value of s_0 to be equal to an identifying value or parameter associated with an intended receiving device 210, such as an RNTI, which may support various techniques for partial decoding of a search space by various receiving devices 210 in accordance with examples as disclosed herein. In some aspects, an output of a hash function 315 may include 32 bits (such that v=32). h:{0,1}^(v)×{0,1}^(k)→{0,1}^(v)  (1) s _(i) =h(s _(i-1) ,m _(i))  (2)

A transmitting device 205 may generate a spine 320 of v bit states by sequentially or cumulatively hashing together groups of k bits from the input message 305 and, in some implementations, may refrain from adding any redundancy bits (as may be added for some other coding schemes). For example, a transmitting device 205 may obtain a spine 320-a-1 as an output of a hash function 315-a-1, may obtain a spine 320-a-2 as an output of a hash function 315-a-2, and may obtain a spine 320-a-3 as an output of a hash function 315-a-3. Further, in some aspects, a transmitting device 205 may use or otherwise reach a hash function 315 with a low probability of hash collisions (in part as a result of the sequential or cumulative hashing of groups or segments of k bits from the input message 305).

The transmitting device 205 may generate a spine 320 for each message segment 310 and may use each of the n/k spines 320 as a seed or input into a respective instance of an RNG 325. A spine 320 may include or otherwise convey information associated with a message segment 310 of a same coding indices or stage as well as information associated with message segments 310 of preceding coding indices or stages. For instance, the spine 320-a-1 may include or otherwise convey information associated with the message segment 310-a-1 (and a seed value S_0, where applicable), the spine 320-a-2 may include or otherwise convey information associated with the message segment 310-a-1 and the message segment 310-a-2, and the spine 320-a-3 may include or otherwise convey information associated with the message segment 310-a-1, the message segment 310-a-2, and the message segment 310-a-3.

As such, a last or final spine 320 may include encoded information associated with the entire message 305 and a transmitting device 205 may, in some scenarios, transmit a signal associated with the last spine 320 (and suppress transmission of a signal associated with other spines 320) to achieve an upper limit bit or channel rate (because the transmission of the signal associated with the last spine 320 may convey the entire message 305 via a single channel use). Such scenarios in which the transmitting device 205 exclusively transmits a signal associated with the last spine 320 may include scenarios of a relatively high SNR (such as an SNR greater than a threshold SNR or a theoretically infinite SNR) or scenarios associated with a relatively high constellation order (such as a constellation order greater than a threshold constellation order).

Each instance of an RNG 325, in accordance with receiving a spine 320 as an input, may output a symbol value 330 (such as a sequence of c-bit numbers or a sequence of c bits). As such, an RNG 325 may take a value of a spine 320 as an input (having a size of v bits) and may apply some numeric transposition function N to the value of the spine 320. Such a numeric transposition function N may be an RNG, a pseudo-random RNG, a mapping function, a scrambling function, a scaling function, or any combination thereof. In some aspects, an RNG 325 may be represented by Equation 3. RNG:{0,1}^(v)×

→{0,1}^(c)  (3)

In some implementations, a symbol value 330 may be an example of, or may be otherwise associated with (such as mapped to) one or more modulation symbols, such as an in-phase and quadrature (IQ) constellation symbol or point, or other types of modulation symbols, such as a pulse-amplitude modulation (PAM) symbol. In some aspects, an IQ constellation symbol may be or may be associated with two orthogonal PAM symbols. In some other implementations, the transmitting device 205 may convert a symbol value 330 into an IQ constellation symbol or point (such as via an IQ constellation mapping function). In implementations in which the transmitting device 205 converts a symbol value 330 into an IQ constellation symbol or point, the transmitting device 205 may use an IQ constellation mapping function to generate a transmitted symbol (such as a constellation symbol or a modulation symbol) from an output of an RNG 325. In such implementations, a transmitting device 205 may use the IQ constellation mapping function to map each symbol value 330 to a (different) modulation symbol (which may be equivalently referred to herein as a constellation symbol or point). Thus, the rateless coding scheme 300 may illustrate an example implementation that includes a combination of an encoding operation and a modulation operation (such as a scheme where encoding and modulation are performed jointly, or a rateless encoding and modulation scheme, or a rateless modulation and coding scheme). However, the described techniques may implement other schemes where encoding and modulation are performed jointly, including schemes associated with coding indices corresponding to a cumulative encoding of different quantities of message segments 310. In some aspects, and because a receiving device 210 may jointly decode over all received symbols, any mapping may be suitable or compatible with the rateless coding scheme 300. Additional details relating the mapping of symbol values 330 to modulation symbols are illustrated by and described in more detail with reference to FIG. 4 .

In some aspects, a transmitting device 205 may generate an in-phase (I) value, such as a real component, and a quadrature (Q) value, such as an imaginary component, in accordance with or under an average power constraint P. For example, if b is a symbol value 330 (a c-bit output) from an RNG 325, the transmitting device 205 may generate an I value and a Q value in accordance with Equations 4-7.

$\begin{matrix} {u = \frac{b + 0.5}{2^{c}}} & (4) \end{matrix}$ Uniform: b→(u−0.5)·√{square root over (6P)}  (5) Truncated Gaussian: b→ϕ ⁻¹(γ+(1−2γ)u)√{square root over (P/2)}  (6) γ≡ϕ(−β)limits the Gaussian's range to ±β√{square root over (P/2)}  (7)

In some implementations, a transmitting device 205 may achieve higher bit rates (without increasing a decoding cost) via a puncturing of the transmitted symbols at the transmitter side, where such transmission puncturing may refer to various techniques for performing transmissions associated with a subset of the spines 320 for a given message 305, such as refraining from performing transmissions associated with one or more spines 320 for at least in an initial transmission associated with the given message 305. For example, a transmitting device 205 may transmit one or more signals associated with one or more specific spines 320 over a set of transmission occasions 335 in accordance with a transmission puncturing scheme. The transmission puncturing scheme may define or otherwise indicate which one or more spines 320 a transmitting device 205 is to transmit at each of the set of transmission occasions 335. For example, a transmitting device 205 may transmit a signal associated with the spine 320-a-3 during a transmission occasion 335-a-1, may transmit a signal associated with the spine 320-a-2 during a transmission occasion 335-a-2, and may transmit a signal associated with the spine 320-a-1 during a transmission occasion 335-a-3, where applicable.

Further, and as shown in the rateless coding scheme 300, a transmitting device 205 may obtain various symbol values 330 from each RNG 325 depending on a transmission occasion 335. For example, the RNG 325-a-1 may output, for the input spine 320-a-1, a symbol value 330-a-11 (as illustrated by or denoted as an x_(1,1) or x_1,1 value) for the transmission occasion 335-a-1, a symbol value 330-a-12 (as illustrated by or denoted as an x_(1,2) or x_1,2 value) for the transmission occasion 335-a-2, and a symbol value 330-a-13 (as illustrated by or denoted as an x_(1,3) or x_1,3 value) for the transmission occasion 335-a-3. The RNG 325-a-2 may output, for the input spine 320-a-2, a symbol value 330-a-21 (as illustrated by or denoted as an x_(2,1) or x_2,1 value) for the transmission occasion 335-a-1, a symbol value 330-a-22 (as illustrated by or denoted as an x_(2,2) or x_2,2 value) for the transmission occasion 335-a-2, and a symbol value 330-a-23 (as illustrated by or denoted as an x_(2,3) or x_2,3 value) for the transmission occasion 335-a-3. The RNG 325-a-3 may output, for the input spine 320-a-3, a symbol value 330-a-31 (as illustrated by or denoted as an x_(3,1) or x_3,1 value) for the transmission occasion 335-a-1, a symbol value 330-a-32 (as illustrated by or denoted as an x_(3,2) or x_3,2 value) for the transmission occasion 335-a-2, and a symbol value 330-a-33 (as illustrated by or denoted as an x_(3,3) or x_3,3 value) for the transmission occasion 335-a-3. Although a symbol value 330 is illustrated for each spine 320 at each transmission occasion 335, a transmitting device 205 may refrain from generating those symbol values 330 that are not configured or scheduled for transmission, such as those spines 320 that have been punctured by a transmission puncturing scheme for a given transmission occasion 335.

As such, if the transmitting device 205 transmits a signal associated with the spine 320-a-3 during the transmission occasion 335-a-1, transmits a signal associated with the spine 320-a-2 during the transmission occasion 335-a-2, and transmits a signal associated with the spine 320-a-1 during the transmission occasion 335-a-3, the transmitting device 205 may transmit a signal associated with the symbol value 330-a-31 during the transmission occasion 335-a-1, may transmit a signal associated with the symbol value 330-a-22 during the transmission occasion 335-a-2, and may transmit a signal associated with the symbol value 330-a-13 during the transmission occasion 335-a-3. Each transmission, which may collectively be associated with or based on a transmission puncturing scheme may use any modulation constellation, such as any one or more of a quadrature amplitude modulation (QAM) constellation, a non-square constellation, or a Gaussian constellation, among other examples. Additional details relating to such a transmission puncturing scheme are illustrated by and described in more detail with reference to FIG. 5 .

FIG. 4 shows example mapping functions 400 and 401 that support transmission puncturing schemes for rateless coding. The mapping functions 400 and 401 may be implemented to realize aspects of the wireless communications system 100 or the signaling diagram 200. For example, the mapping functions 400 and 401 illustrate a mapping or conversion from a symbol value 330 (an output of an RNG 325) to a modulation symbol 405 (which may be equivalently referred to herein as a constellation symbol or a constellation point). In some implementations, an encoder of a transmitting device 205 may employ the mapping functions 400 and 401 to map encoded portions or segments of a message 305 to modulation symbols 405 to facilitate a mapping to communication resources over which the transmitting device 205 may transmit one or more signals associated with the encoded portions or segments.

In some implementations, a transmitting device 205 may perform transmissions over one or more transmission occasions 335 in accordance with a transmission puncturing scheme. In accordance with or as a result of the transmission puncturing scheme, a decoder may be bound by an upper limit maximal working rate that the decoder can work with. In some aspects, such a working rate (such as an instantaneous rate, an instantaneous bit rate, or an instantaneous channel rate) may be increased without any decoder loss or complexity via multiple implementation options at a transmitting device 205.

In some implementations, and as shown by the mapping function 400, a transmitting device 205 may map a modulation symbol 405 with two spines 320, such as mapping a modulation symbol 405 with the output of two RNGs 325, where a first output may be mapped along a first axis of a modulation scheme (such as a real component or an in-phase component of modulation scheme) and a second output may be mapped along a second axis of the modulation scheme (such as an imaginary component or a quadrature component of the modulation scheme). For example, the mapping function 400 illustrates an RNG 325-b-1, an RNG 325-b-2, and an RNG 325-b-3 (each of which may take, as an input, a different spine 320), and the RNG 325-b-1 may output a symbol value 330-b-11, the RNG 325-b-2 may output a symbol value 330-b-21, and the RNG 325-b-3 may output a symbol value 330-b-31. In some aspects, at least some of the symbol values 330-b obtained as outputs from the RNGs 325-b may be associated with a same transmission occasion 335, such as a transmission occasion associated with transmission of the modulation symbol 405-a.

In accordance with the mapping function 400, a transmitting device 205 may map the symbol value 330-b-11 to a real portion (such as an I value) of the modulation symbol 405-a, and map the symbol value 330-b-21 to an imaginary portion (such as a Q value) of the modulation symbol 405-a. In some implementations, such as if a spine 320 associated with the RNG 325-b-3 is scheduled or configured for a transmission, the transmitting device 205 may map the symbol value 330-b-31 to a real portion (such as an I value) of another modulation symbol 405 (not shown), which may be associated with a same transmission occasion 335 or a different transmission occasion 335 than the modulation symbol 405-a. Although shown as mapping symbol values 330 in an order of real first, imaginary second (such that a relatively earlier of two spines 320 or symbol values 330 maps to an I value and a relatively later of the two spines 320 or symbol values 330 maps to a Q value), a transmitting device 205 also may map symbol values 330 in an order of imaginary first, real second (such that a relatively earlier of two spines 320 or symbol values 330 maps to a Q value and a relatively later of the two spines 320 or symbol values 330 maps to an I value).

In some implementations, and as shown by the mapping function 401, a transmitting device 205 may map a modulation symbol 405 with one spine 320, such as mapping a modulation symbol 405 with the output of one RNG 325, where the output may be mapped as a combination of a first axis of a modulation scheme (such as a real component of modulation scheme) and a second axis of the modulation scheme (such as an imaginary component of the modulation scheme). For example, the mapping function 401 illustrates an RNG 325-c-1, an RNG 325-c-2, and an RNG 325-c-3 (each of which may take, as an input, a different spine 320) and the RNG 325-c-1 may output a symbol value 330-c-11, the RNG 325-c-2 may output a symbol value 330-c-21, and the RNG 325-c-3 may output a symbol value 330-c-31. In various examples, the symbol values 330-c obtained as outputs from the RNGs 325-c may be associated with a same transmission occasion 335, or different transmission occasions 335. In accordance with the mapping function 401, a transmitting device 205 may map the symbol value 330-c-11 to both a real portion (such as an I value) and an imaginary portion (such as a Q value) of a modulation symbol 405-b-1. In some implementations, such as when a respective spine 320 associated with the RNG 325-c-2 or the RNG 325-c-3 is scheduled or configured for a transmission, the transmitting device 205 may map the symbol value 330-b-31 to a real portion and an imaginary portion of a modulation symbol 405-b-2, or map the symbol value 330-c-31 to a real portion and an imaginary portion of a modulation symbol 405-b-3, either or both of which may be associated with a same transmission occasion 335 or a different transmission occasion 335 than the modulation symbol 405-b-1.

In an example of the mapping function 400, for n=256, k=4, and c=6, and using 64 PAM per spine 320 and 4096 QAM per channel use, a transmitting device 205 may start with R=8 bits per channel use (such as if transmitting all spines without puncturing). In an example of the mapping function 401, for n=256, k=4, and c=12 and using 4096 QAM per spine 320 and per channel use, a transmitting device 205 may start with R=4 bits per channel use (such as if transmitting all spines without puncturing). Thus, in an implementation of the mapping function 400 according to which a transmitting device 205 transmits one of either a real part or an imaginary part per spine 320, the transmitting device 205 may double an effective instantaneous rate (an effective bit rate or channel rate) for a same constellation mapping. A channel may still be associated with a limit on an achievable rate and a total quantity of symbols being used by communicating devices may still be the same across the two options (the mapping function 400 and the mapping function 401), but, in some implementations, communicating devices may employ different puncturing schemes while maintaining decoder complexity. Additional details relating to an example puncturing scheme are illustrated by and described in more detail with reference to FIG. 5 .

FIG. 5 shows an example puncturing scheme 500 that supports transmission puncturing schemes for rateless coding. The puncturing scheme 500 may be implemented to realize aspects of the wireless communications system 100 or the signaling diagram 200. For example, the puncturing scheme 500 illustrates transmissions of signaling associated with different spines 320 or symbol values 330 over multiple transmission occasions 335 in accordance with a puncturing pattern. In some implementations, a transmitting device 205 may perform transmissions associated with different spines 320 over the multiple transmission occasions 335 in accordance with the puncturing scheme 500 to increase an achievable bit rate associated with a message 305 by iterative transmission of segments of the message via the different spines 320. In various examples, transmissions associated with a given transmission occasion 335 may be performed concurrently (such as in a same symbol duration and over different frequency resources or different spatial resources), or sequentially (such as in successive symbol durations, which may or may not be over the same frequency resources or the same spatial resources), or any combination thereof, among other organizations of transmissions in a given transmission occasion 335.

For example, a message 305 associated with transmission using the puncturing scheme 500 may include a set of message segments 310, and different spines 320 may include or otherwise convey information associated with a cumulative encoding of different portions of the message 305, as illustrated by and described in more detail with reference to FIG. 3 . As such, a transmitting device 205 may effectively attempt different bit rates in accordance with transmitting signaling associated with different spines 320 (such as different coding indices) over different transmission occasions 335, where later (higher indexed) spines 320 may include or convey larger cumulative portions of the message 305 (a greater quantity of sequentially encoded message segments 310) than earlier (lower indexed) spines 320. Accordingly, if a transmitting device 205 transmits one modulation symbol 405 per spine 320 per transmission occasion 335 (per pass or sub-pass), and if it takes l transmission occasions 335 (l passes or sub-passes) for a receiving device 210 to successfully decode the message 305, the effective bit rate becomes k/l bits per channel use (where a maximum or upper limit bit rate may be k). In other words, if there are n/k symbols (such as spines 320) and k bits per symbol in a basic form (such as a form with no puncturing), an effective quantity of bits per channel use may be

n/(quantity of symbols in all transmissions). As such, a maximum or upper limit effective quantity of bits per channel use may be n (as such a maximum or upper limit may be associated with transmission of one symbol) and a minimum or lower limit effective quantity of bits per channel use may approach zero (as such a minimum or lower limit may be associated with transmission of many symbols, such as a quantity of symbols that can approach infinity),In some implementations, a transmitting device 205 may puncture spines 320 or associated symbol values 330 of a rateless encoding scheme to achieve a higher or finer bit rate without increasing a decoding cost. For example, instead of transmitting a symbol value 330 for all of the spines 320 of an encoded message 305 (such as in an initial transmission occasion 335, or per pass or sub-pass), a transmitting device 205 may initially skip or puncture some spines 320 or symbol values 330. In such implementations, the transmitting device 205 may transmit one or more of the initially skipped spines 320 or symbol values 330 (such as the spines 320 or symbol values 330 that were not initially transmitted) if a receiving device 210 is unable to successfully receive and decode the initial transmission (as may be evidenced by reception of a NACK or by a lack of reception of an ACK at the transmitting device 205). In some aspects, the transmitting device 205 may, in a next or other transmission occasion 335, transmit a spine 320 or a symbol value 330 that was previously left untransmitted and may refrain from or suppress transmission of spines 320 or symbol values 330 that were previously transmitted (before starting a new pass of the entire message 305 or a next message 305).

The puncturing scheme 500 may illustrate an example for defining or indicating which spines 320 (such as which coding indices) a transmitting device 205 transmits at which transmission occasions 335 and, in some implementations, the puncturing scheme 500 may be known to both the transmitting device 205 and any one or more receiving devices 210. A transmitting device 205 (potentially with coordination with a receiving device 210 and in accordance with one or more capabilities or channel conditions) may select a combination of transmitted or spines 320 or symbol values 330 to define or control a rate granularity.

For example, and as shown by the puncturing scheme 500, a transmitting device 205 may, during a transmission occasion 335-b-1, perform a transmission associated with a spine 320 having a spine index 8, a spine 320 having a spine index of 16, a spine 320 having a spine index of 24, and a spine 320 having a spine index of 32. As such, the transmitting device 205 may transmit one or more signals associated with a message 305, such as signals associated with symbol values 330 or modulation symbols 405, at an effective bit rate of 8 k bits per channel use (as each transmitted spine 320 includes information for at least seven other spines 320, each conveying k bits). If the transmission during the transmission occasion 335-b-1 is unsuccessful, the transmitting device 205 may, during a transmission occasion 335-b-2, perform a transmission associated with a spine 320 having a spine index 4, a spine 320 having a spine index of 12, a spine 320 having a spine index of 20, and a spine 320 having a spine index of 28. As such, the transmitting device 205 may transmit the signaling associated with the message 305 at an effective bit rate of 4 k bits per channel use.

The transmitting device 205 may similarly perform transmissions associated with one or more remaining spines 320 (untransmitted spines 320) over one or more other transmission occasions 335, potentially including one or more of a transmission occasion 335-b-3, a transmission occasion 335-b-4, a transmission occasion 335-b-5, a transmission occasion 335-b-6, a transmission occasion 335-b-7, and a transmission occasion 335-b-8, which may proceed until a receiving device 210 is able to successfully receive and decode the message 305 (as may be evidenced by reception, at the transmitting device 205, of an ACK). As an example, for n=256, k=4, and a quantity of symbols N_(un), =n/k=64, a transmitting device 205 may transmit every other symbol value 330 or spine 320 from an initial symbol value 330 or spine 320 (as may be represented by a “1:2 symbol transmission” labeling convention) over all 32 transmitted symbol values or spines 320 during a first transmission occasion 335 (such as a first pass) and, for another pass, the transmitting device 205 may transmit one symbol value 330 or spine 320 starting from an end of a spine vector (where the transmission is wrapped around in a spine domain). As illustrated by the puncturing scheme 500, the transmitting device 205 may start with 8 k bits per channel use and may decrease the bit rate over a number of other transmission occasions 335, where a total quantity of transmitted symbol values 330 or spines 320 per pass dictates the effective rate granularity.

Further, although illustrated as occurring sequentially, the transmission occasions 335 may occur in any order or at any time. In some implementations, for example, each of the transmission occasions 335 may occur over distinct time periods such that each subsequent transmission occasion 335 is later in time relative to a previous transmission occasion 335. In some other implementations, one or more of the transmission occasions 335 may overlap in time.

FIG. 6 shows an example decoding scheme 600 that supports transmission puncturing schemes for rateless coding. The decoding scheme 600 may be implemented to realize aspects of the wireless communications system 100 or the signaling diagram 200. For example, the decoding scheme 600 illustrates a decoding process at a receiving device 210 for decoding signaling associated with a rateless code, such as a spinal code. In some aspects, the decoding scheme 600 may illustrate an example implementation that includes a combination of an decoding operation and a demodulation operation (such as a scheme where decoding and demodulation are performed jointly, or a rateless decoding and demodulation scheme, or a rateless demodulation and decoding scheme). However, the described techniques may implement other schemes where decoding and demodulation are performed jointly, including schemes associated with coding indices corresponding to a cumulative encoding of different quantities of message segments 310.

In some implementations, a receiving device 210 may receive a signal associated with a message 305 encoded according to a rateless coding scheme (such as a spinal coding scheme) and may employ a cost function associated with a Euclidean distance between a channel measurement associated with the signal and each of a set of candidate symbol values 605 multiplied by the channel (or an estimated channel). In other words, the cost function may be associated with a Euclidean distance between a received signal and a product of each of the candidate symbol values 605 and the channel (or the estimated channel).

In some aspects, a maximum likelihood (ML) decoder may generate a set of (such as all) codewords out of a size n (such that a total quantity of codewords is 2^(n)) and may calculate a distance between generated symbol values (such as symbol values 330) at the receiver and actually received (noisy) symbol values per codeword. In such aspects, the decoder may infer, ascertain, or otherwise determine that the decoded message is the one with a minimal distance over all received symbol values 330 or spines 320. In other words, given a vector of observations y and an encoder function x(M′) that yields the vector of transmitted symbol values or spines 320 for a message M′, the ML rule may be defined in accordance with Equation 8.

$\begin{matrix} {\hat{M} \in {\underset{M^{\prime} \in {\{{0,1}\}}^{n}}{argmin}{{\overset{\_}{y} - {\overset{\_}{x}\left( M^{\prime} \right)}}}^{2}}} & (8) \end{matrix}$

In implementations in which a transmitting device 205 employs a puncturing scheme to transmit signaling associated with a message encoded using a rateless code (such as a spinal code), a receiving device 210 may refrain from evaluating missing observations (corresponding to a punctured spine 320 or symbol value 330) during the calculation of the distance between the generated symbol values and the actually received or measured symbol values. Instead, for any untransmitted modulation symbols or spines 320, the receiving device may advance to a next decoding stage associated with an actually transmitted modulation symbol or spine 320. Further, in implementations in which a receiving device 210 receives the signaling over multiple transmission occasions 335 (such as in decoding scenarios involving multiple passes), the receiving device 210 may average or sum (such as accumulate) a distance metric of each symbol or spine 320 between transmission occasions 335. Such a decoding implementation may be computationally demanding and may be unsuitable for some devices.

As such, in some implementations of the present disclosure, a receiving device 210 may employ a decoder scheme, which may be referred to as a bubble decoder or a list decoder, that is able to achieve lower computational complexity and leverage aspects associated with rateless coding (such as spinal coding). For example, because a spinal encoder may apply a hash function 315 sequentially or cumulatively across multiple message segments 310, input messages with a common prefix also may have a common spine value (such as a common spine prefix or a common value of a spine 320 conveying information associated with the common prefix), whereas symbol values 330 produced or output by an RNG 325 from the common spine values may or may not be identical. As such, a receiving device 210 may use this structure to decompose a total distance into a summation over spines 320. For example, a receiving device 210 may break y into sub-vectors y _(l) . . . y _(n/k), which may represent the symbols from spines values s_(i) of a correct message (as well as for x(M′)). With such a representation of y as sub-vectors y _(l) . . . y _(n/k), the cost function may be defined in accordance with Equation 9.

$\begin{matrix} {{{\overset{\_}{y} - {\overset{\_}{x}\left( M^{\prime} \right)}}}^{2} = {\sum\limits_{i = 1}^{n/k}\;{{{\overset{\_}{y}}_{\iota} - {{\overset{\_}{x}}_{i}\left( s_{i}^{\prime} \right)}}}^{2}}} & (9) \end{matrix}$

Accordingly, a receiving device 210 may calculate a summation for a set of (such as all) transmissions or candidates that share a same spine value s_(i). Thus, in some implementations, a receiving device 210 may implement a decoding process as a tree decoding with a root at spine s₀. The receiving device 210 may sum or accumulate branch costs on a path from the root to a node and calculate a path cost (which may be referred to as a path metric or a decoding metric) of the node using Equation 9.

In accordance with the cost function shown by Equation 9, and supposing, as an example, an ML message M* and some other message M′ that differ in an i^(th) bit, spines 320 including and after a spine index of ceil(i/k) may be dissimilar (and all other symbols before a spine index of ceil(i/k) may be the same across the two transmissions) such that the difference between the two decoded transmissions is present in the last O(log n) bits. As such, the earlier the error in M′, the larger the path cost may be. If a receiving device 210 constructs an entire ML decoding tree and computes path costs for each of the nodes (which may be referred to as leaves), the receiving device 210 may select a best B nodes (such as the B nodes or leaves having the lowest path cost) and may trace back through the decoding tree to find that each of the B selected nodes converge to a relatively small number of common “ancestors,” where an “ancestor” may refer to a node of a decoding tree relatively closer to a root of the tree than the B selected nodes and where a common “ancestor” may refer to a node from which each of the B selected nodes can be traced back to.

Thus, a receiving device 210 may implement a bubble decoder associated with a depth parameter d and a beam width parameter B and, instead of searching an entire decoding tree, the receiving device 210 may maintain B common ancestors (beams) and a partial decoding tree rooted at each ancestor of depth d. In some aspects, B=4 and d=1. In some implementations, the receiving device 210 may select a node with a lowest path cost and may return a complete message corresponding to the selected node (such as a complete message conveyed by a spine 320 associated with the selected node of the decoding tree). Additionally, or alternatively, the receiving device 210 may perform a cyclic redundancy check (CRC) on a set of (such as all) left codewords, which may include a total of B2^(kd) left codewords.

In some implementations, a receiving device 210 may combine a bubble decoder with a puncturing scheme, such as the puncturing scheme 500, to reduce the complexity associated with generating a decoding tree. For example, if a transmission (such as a retransmission) occurs at a specific stage or index of the decoding tree (where such a specific stage or index of the decoding tree may correspond to a spine 320 or symbol), a receiving device 210 may use a previously calculated sub-tree until that specific stage or index and save the complexity associated with re-generating the sub-tree until that specific stage or index for the (re)transmission. To keep complexity low while maintaining or increasing system performance, a receiving device 210 may accordingly maintain retransmission symbols starting from the end of the tree (corresponding to the last symbols or spines 320). For the (re)transmission, the receiving device 210 may begin expanding the tree again at the specific stage or index using new information obtained from the (re)transmission. As such, the decoding scheme 600 may be associated with a reduced complexity ML approach (which may be referred to as a bubble decoder), which may run in a time polynomial in a message size.

The decoding scheme 600 may further be a joint demodulation-decode process in which a receiving device 210 may skip a de-mapper block (such as a log-likelihood ratio (LLR) computation).

A width of the decoding tree may be associated with or given by the parameter k (such that the tree may expand by 2^(k) nodes or leaves at each stage). As such, the width of the decoding tree may decrease as k decreases and the decoding tree may correspondingly include more decoding stages (as a result of n/k increasing) as k decreases. Further, as the width of the decoding tree decreases and as a quantity of decoding stages increases, a latency until a next transmission (such as a next retransmission) may increase as well. Likewise, the width of the decoding tree may increase as k increases and the decoding tree may correspondingly include fewer decoding stages (as a result of n/k decreasing) as k increases. Further, as the width of the decoding tree increases and as a quantity of decoding stages decreases, a latency until a next transmission (such as a next retransmission) may decrease as well.

Accordingly, and as shown in the decoding scheme 600, a receiving device 210 may generate or otherwise use a decoding tree of n/k decoding stages or levels and 2^(n) leaves or nodes at a last or final decoding stage. A root of the decoding tree may be s₀ (or s_0) and may branch out to 2^(k) leaves at a first decoding stage associated with a spine s₁ (or s_1). Each leaf of the first decoding stage associated with the spine s₁ may branch out to 2^(k) leaves at a next decoding stage associated with a next spine, and eventually to a decoding stage associated with a spine s_(L) (or s_L). The decoding tree may end at a final decoding stage associated with a spine s_(n/k) (or s_n/k).

In some implementations, a receiving device 210 may recognize that decoding hypotheses, which may be equivalently referred to as candidate symbol values 605, that have same initial states that share same symbol hypotheses or guesses (such as decoding hypotheses for nodes or leaves that have a common “ancestor” node in the decoding tree) are identical in a decoding stage associated with the same initial states that share the same symbol hypotheses or guesses. In other words, decoding stages up to the common “ancestor” node in the decoding tree may be the same for decoding hypotheses of later decoding stages that share the same symbol hypotheses or guesses for that common “ancestor” node. As such, the receiving device 210 may merge such initial identical states (and thus save some decoding complexity and computational cost).

Each of the leaves or nodes at each decoding stage of the decoding tree may correspond to decoding hypotheses or candidate symbol values 605 associated with an encoded message 305 at a receiving device 210. As part of the decoding scheme 600, for example, a receiving device 210 may generate a set of candidate symbol values 605 at each decoding stage corresponding to a spine 320 and may select one or more candidate symbol values 605 at each decoding stage or for each spine 320. For example, a receiving device 210 may evaluate a set of candidate symbol values 605 in accordance with a cost function associated with a distance (such as a Euclidean distance) between each of the set of candidate symbol values 605 and an actually received or measured symbol value and may select the one or more candidate symbol values 605 associated with the smallest cost functions (or the shortest Euclidean distances). The cost function may be defined in accordance with Equation 10.

$\begin{matrix} {{cost}_{L,i} = {\sum\limits_{i = 1}^{L}\;{{y_{i,j} - {x_{i,j}\left( s_{i} \right)}}}^{2}}} & (10) \end{matrix}$

For example, the receiving device 210 may initialize or begin a decoding tree assuming a candidate symbol value 605-a associated with an s₀ value, which may be associated with a spine 320-b-1. In some aspects, s₀ may be a constant or static value, such as zero, or may be a value associated with an identifier of one or more devices.

The receiving device 210 may generate a set of candidate symbol values 605-b for a subsequent spine 320-b-2, including a candidate symbol value 605-b-1, a candidate symbol value 605-b-2, a candidate symbol value 605-b-3, a candidate symbol value 605-b-4, and a candidate symbol value 605-b-5. In some implementations, the receiving device 210 may generate the set of candidate symbol values 605-b by inputting, into a first hash function 315, the s₀ value and multiple first sets of k candidate bits (which may function as or be examples of possibilities for bits included in a first message segment 310, such as possible bit string values of a message segment 310-a-1 as shown in FIG. 3 ) and obtaining, as an output of the first hash function 315, a first set of candidate encoded values (such as a first set of candidate spine values for the spine 320-b-2). The receiving device 210 may input, into a first RNG 325, the first set of candidate encoded values (such as the first set of candidate spines) and obtain, as an output of the first RNG 325, the set of candidate symbol values 605-b for the spine 320-b-2. The receiving device 210 may compare each of the set of candidate symbol values 605-b to a channel measurement (for that spine 320-b-2, if transmitted) and may select B candidate symbol values 605-b that are associated with a smallest cost function or Euclidean distance relative to the channel measurement. As shown in the decoding scheme 600, B=4 (such that the receiving device 210 may select four candidate symbol values 605 for further consideration or evaluation).

The receiving device 210 may generate a set of candidate symbol values 605-c for a subsequent spine 320-b-3 (shown as including a single candidate symbol value 605-c for illustrative purposes). In some implementations, the receiving device 210 may generate the set of candidate symbol values 605-c by inputting, into a second hash function 315, a candidate spine value associated with the candidate symbol value 605-b-3 and multiple second sets of k candidate bits (which may function as or be examples of possibilities for bits included in a second message segment 310, such as possible bit string values of a message segment 310-a-2 as shown in FIG. 3 ) and obtaining, as an output of the second hash function 315, a second set of candidate encoded values (such as a second set of candidate spines for the spine 320-b-3). The receiving device 210 may input, into a second RNG 325, the second set of candidate encoded values (such as the second set of candidate spines) and obtain, as an output of the second RNG 325, the set of candidate symbol values 605-c. The receiving device 210 may compare each of the set of candidate symbol values 605-c to a channel measurement (of a modulation symbol for that spine 320-b-3, if transmitted) and may select B candidate symbol values 605-c that are associated with a smallest cost function or Euclidean distance relative to the channel measurement. As shown by the decoding scheme 600, the receiving device 210 may select the one candidate symbol value 605-c shown, potentially among other candidate symbol values 605-c associated with potential spine values for the spine 320-b-3.

The receiving device 210 may generate a set of candidate symbol values 605-d for a subsequent spine 320-b-4, including a candidate symbol value 605-d-1, a candidate symbol value 605-d-2, a candidate symbol value 605-d-3, a candidate symbol value 605-d-4, and a candidate symbol value 605-d-5. In some implementations, the receiving device 210 may generate the set of candidate symbol values 605-d by inputting, into a third hash function 315, a spine value associated with the candidate symbol value 605-c and multiple third sets of k candidate bits (which may function as or be examples of possibilities for bits included in a third message segment 310, such as possible bit string values of a message segment 310-a-3 as shown in FIG. 3 ) and obtaining, as an output of the third hash function 315, a third set of candidate encoded values (such as a third set of candidate spines 320 for a spine 320-b-4). The receiving device 210 may input, into a third RNG 325, the third set of candidate encoded values (such as the third set of candidate spines 320) and obtain, as an output of the third RNG 325, the set of candidate symbol values 605-d. The receiving device 210 may compare each of the set of candidate symbol values 605-d to a channel measurement (of a modulation symbol for that spine 320-b-4, if transmitted) and may select B candidate symbol values 605-d that are associated with a smallest cost function or Euclidean distance relative to the channel measurement.

The receiving device 210 may likewise generate other sets of candidate symbol values 605 until the receiving device 210 reaches an n/k^(th) decoding stage associated with a spine 320-b-5, where the receiving device 210 may generate a set of candidate symbol values 605-e. The set of candidate symbol values 605-e may include a candidate symbol value 605-e-1, a candidate symbol value 605-e-2, a candidate symbol value 605-e-3, a candidate symbol value 605-e-4, a candidate symbol value 605-e-5, a candidate symbol value 605-e-6, and a candidate symbol value 605-e-7. The receiving device 210 may generate the set of candidate symbol values 605-e similarly to how the receiving device 210 generates the other sets of candidate symbol values 605 and may similarly select B candidate symbol values 605-e that are associated with a smallest cost function or Euclidean distance relative to a channel measurement (of a modulation symbol for that spine 320-b-5, if transmitted). In some aspects, the n/k^(th) decoding stage associated with the spine 320-b-5 may be a final decoding stage associated with a final spine 320 (such that the spine 320-b-5 conveys information associated with the entire message 305). In such aspects, the receiving device 210 may measure, detect, or otherwise identify which of the candidate symbol values 605 is closest to the channel measurement and may infer that whichever candidate symbol value 605 is closest is associated with a correct decoding of the message 305.

In some implementations, a decoder of a receiving device 210 may calculate a Euclidean distance metric at each step or stage of the decoding scheme 600. For example, the decoder may implement an encoder block on each possible codeword with a length of n and, on each stage of the decoding scheme 600, may calculate a metric between a set of candidate symbol values 605 (a set of generated constellation symbols or points) relative to a received constellation symbol or point using Equation 10. A receiving device 210 may store or otherwise save the metric throughout (all of) the stages of the decoding scheme 600 (such as across a quantity of transmission occasions 335 associated with a given message 305) and may identify, notice, or otherwise determine that if a hash function 315 received two inputs that differ (even by one bit), an output of the hash function 315 may be different as a result of the properties of the hash functions 315. Thus, the calculated metric, which may be an example of a decoding metric, a path cost metric, or a value of the cost function, may be different as well. A receiving device 210 may calculate and save the path cost metric and the path cost metric may increase from a first (such as earliest) symbol, spine, or coding index at which the decoder of the receiving device 210 begins to diverge from an actually received or measured constellation symbol or point.

Accordingly, the decoder of the receiving device 210 may check at which stage of the decoding scheme 600 the calculated path cost metric exceeds a threshold path cost and may report the identified stage to a transmitting device 205. For example, if the receiving device 210 identifies or otherwise determines that a path cost metric exceeds the threshold path cost at a decoding stage associated with spine s_(L), the receiving device 210 may feedback, to the transmitting device 205, a location of a symbol associated with the spine s_(L). As such, the transmitting device 205 may retransmit the indicated value associated with the spine s_(L) (such as during a next or subsequent (re)transmission), which may or may not involve an additional processing through an RNG 325. The receiving device 210 may store previously-made decoding hypotheses up until the value associated with the spine s_(L) (may use previous stage decoding of a partial tree up to the decoding stage corresponding to the spine s_(L)) and may start or resume decoding at the decoding stage corresponding to the spine s_(L) using the retransmission (a later transmission) of the symbol value 330 associated with the spine s_(L). In some aspects, the transmitting device 205 may select a different transmission puncturing scheme in accordance with receiving the indication from the receiving device 210 but may transmit a symbol value 330 associated with the indicated spine s_(L) in addition to (such as prior to) implementing the different transmission puncturing scheme.

FIG. 7 shows an example decoding scheme 700 that supports transmission puncturing schemes for rateless coding. The decoding scheme 700 may be implemented to realize aspects of the signaling diagram 200. For example, the decoding scheme 700 illustrates a decoding process at a receiving device 210 for decoding signaling associated with a rateless code, such as a spinal code. In some implementations, a receiving device 210 may implement the decoding scheme 700 to identify which of a set of candidate symbol values 605 have a lowest path cost in accordance with which of the set of candidate symbol values 605 have a shortest distance (such as a shortest Euclidean distance) to a channel measurement 705.

For example, at each decoding stage or spine 320 of a decoder (such as a bubble decoder) at a receiving device 210, the receiving device 210 may compare each of a set of candidate symbol values 605 to a channel measurement 705 to identify one or more of the set of candidate symbol values 605 that have a shortest distance (such as a shortest Euclidean distance) to the channel measurement 705. The receiving device 210 may select the one or more of the set of candidate symbol values 605 that have the shortest distance as candidate symbol values 605 that are relatively more likely to be an actually transmitted symbol value 330 from a transmitting device 205 and may trim or focus a decoding tree, such as a decoding tree illustrated by the decoding scheme 600, to the selected one or more of the set of candidate symbol values 605 at that decoding stage or spine 320 of the decoder. In some aspects, a quantity of the one or more candidate symbol values 605 that a receiving device 210 selects at each decoding stage or spine 320 of the decoder may be equal to B, as described in more detail with reference to FIG. 6 .

In some implementations, and as illustrated by the decoding scheme 700, a receiving device 210 may obtain, calculate, ascertain, or otherwise determine different candidate symbol values 605 in accordance with or as a result of inputting, into a hash function 315, different candidate bits or different spines 320 (such as different spine values), or both. In some aspects, a receiving device 210 may input a quantity of different candidate bits in accordance with a quantity of possible permutations of bits that may be included in or conveyed by a given message segment 310. For example, a receiving device 210 may input, into a hash function 315-b-1, s₀ (or s_0, which may be an example of an initial spine value or a seed value and, in some implementations, may be set equal to an identifying value or parameter of an intended receiving device 210, such as an RNTI of the intended receiving device 210) and candidate bit values of 1 or 0 in scenarios in which a message segment 310 includes or conveys one bit (such that k=1).

The receiving device 210 may receive, calculate, or otherwise obtain, from the hash function 315-b-1, two different candidate spines 320 in accordance with the two different candidate bit value inputs, may obtain two different candidate symbol values 605 using the two different candidate spine values as inputs into an RNG 325, and may map the two different candidate symbol values 605 to constellation points (such as an I+jQ point in a modulation domain) or other coordinate point representations. The receiving device 210 may measure a transmitted symbol value 330 via a channel measurement 705 and may similarly map the channel measurement 705 to a constellation point (such as an I+jQ point in a modulation domain) or another coordinate point representation and may compare the two different candidate symbol values 605 to the channel measurement 705. In some implementations, the receiving device 210 may compare the two different candidate symbol values 605 to the channel measurement 705 by calculating or otherwise determining a distance between each of the candidate symbol values 605 and the channel measurement 705. For example, the receiving device 210 may calculate or otherwise determine a first distance between the candidate symbol value 605 obtained from the inputting of the candidate bit value 1 and the channel measurement 705 and may calculate or otherwise determine a second distance between the candidate symbol value 605 received or obtained from the inputting of the candidate bit value 0 and the channel measurement 705. The receiving device 210 may compare the first distance with the second distance to identify or otherwise determine which of the candidate bit value 1 or the candidate bit value 0 is more likely a bit value conveyed by a received signal associated with that decoding stage or spine 320.

In some aspects, the receiving device 210 may identify or determine that the first distance associated with the candidate symbol value 605 obtained from the inputting of the candidate bit value 1 is smaller than the second distance associated with the candidate symbol value 605 obtained from the inputting of the candidate bit value 0. In some implementations, the receiving device 210 may elect to continue the decoding of the received signal assuming that the candidate bit value of 1 is a correct input for the hash function 315-b-1. Further, in some implementations, the receiving device 210 may elect to continue the decoding of the received signal assuming that both the candidate bit value of 1 and the candidate bit value of 0 may potentially be correct inputs for the hash function 315-b-1. For example, the receiving device 210 may continue the decoding down a sub-tree from each of the candidate symbol value 605 obtained from the inputting of the candidate bit value 1 and the candidate symbol value 605 obtained from the inputting of the candidate bit value 0 if both are within the B candidate symbol values 605 selected for a given decoding stage or spine 320 (such that both the first distance and the second distance satisfy, or are lower than, a threshold distance or such that the first distance and the second distance are among a quantity B of relatively shortest distances measured by the receiving device 210 for the given decoding stage or spine 320).

In scenarios in which the receiving device 210 continues the decoding down sub-trees from each of the candidate symbol value 605 obtained from the inputting of the candidate bit value 1 and the candidate symbol value 605 obtained from the inputting of the candidate bit value 0, the receiving device 210 may use the two different spines 320 obtained from the hash function 315-b-1 as inputs into a hash function 315-b-2 (a next hash function 315 of a rateless coding scheme). For example, the receiving device 210 may input a first spine 320 of s_(1,1) (or s_1,1) and a second spine 320 of s_(1,2) (or s_1,2), both of which may be candidate spines 320 for a next decoding stage or spine 320 of the decoder at the receiving device 210, into the hash function 315-b-2 along with candidate bit values for information that may be included or conveyed by a message segment 310 associated with that next decoding stage or spine 320.

As illustrated by the decoding scheme 700, the receiving device 210 may obtain two different candidate spines 320 in accordance with inputting, into the hash function 315-b-2, the candidate spine 320 s_(1,1) and each of a candidate bit value 0 and a candidate bit value 1 and may obtain another two different candidate spines 320 in accordance with inputting, into the hash function 315-b-2, the candidate spine s_(1,2) and each of a candidate bit value 0 and a candidate bit value 1. The receiving device 210 may obtain four different candidate symbol values 605 in accordance with inputting each of the (four) different candidate spines 320 into an RNG 325 and may map the four different candidate symbol values 605 to constellation points (such as an I+jQ point in a modulation domain) or other coordinate point representations. The receiving device 210 may measure an actually transmitted symbol value 330 associated with that decoding stage or spine 320 via a channel measurement 705 and may similarly map the channel measurement 705 to a constellation point (such as an I+jQ point in a modulation domain) or another coordinate point representation and may compare the four different candidate symbol values 605 to the channel measurement 705.

In some implementations, the receiving device 210 may compare the four different candidate symbol values 605 to the channel measurement 705 by calculating or otherwise determining a distance between each of the candidate symbol values 605 and the channel measurement 705. For example, the receiving device 210 may calculate or otherwise determine a first distance between the candidate symbol value 605 obtained from the inputting of the spine 320 s_(1,1) and the candidate bit value 0 and the channel measurement 705, may calculate or otherwise determine a second distance between the candidate symbol value 605 received or obtained from the inputting of the spine 320 s_(1,1) and the candidate bit value 1 and the channel measurement 705, and so on for each of a third distance and a fourth distance for the candidate symbol values 605 obtained from spine 320 s_(1,2) and the candidate bit values 0 and 1, respectively. The receiving device 210 may compare the first distance, the second distance, the third distance, and the fourth distance to identify or otherwise determine which one or more of the candidate symbol values 605 are more likely actually transmitted symbol values 330 associated with that decoding stage or spine 320.

In some aspects, the receiving device 210 may identify or determine that the first distance associated with the candidate symbol value 605 obtained from the inputting of the candidate spine 320 s_(1,1) and the candidate bit value 0 is smaller than the second distance, the third, distance, and the fourth distance. In some implementations, the receiving device 210 may elect to continue the decoding of the received signal assuming that the candidate spine 320 s_(1,1) and the candidate bit value 0 are or may be correct inputs for the hash function 315-b-2. Further, in some implementations, the receiving device 210 may elect to continue the decoding of the received signal assuming that one or more other candidate spine values or candidate bit values are or may be correct inputs for the hash function 315-b-2. For example, the receiving device 210 may continue the decoding down a sub-tree from each candidate symbol value 605 that are within the B candidate symbol values 605 selected for a given decoding stage or spine 320.

Further, although described in the context of candidate bit values of a single bit (having a bit value of either 0 or 1), a receiving device 210 may similarly input other candidate bit values in scenarios in which message segments 310 include or convey other quantities of bits. For example, a receiving device 210 may input a candidate bit value 11, a candidate bit value 10, a candidate bit value 01, or a candidate bit value 00 into a hash function 315 in scenarios in which a message segment 310 (associated with a current decoding stage or spine 320 of the decoder) includes or conveys two bits (such that k=2). A receiving device 210 may similarly input any quantity of candidate bits corresponding to a quantity of bits that are included or conveyed by a message segment 310 (associated with a current decoding stage or spine 320 of the decoder) and, in some aspects, may support an upper limit of k (such as an upper limit of k=4). In some implementations, a receiving device 210 or a transmitting dive, or both, may signal such an upper limit of k to one or more other devices, such as the other of the receiving device 210 or the transmitting device 205.

In accordance with the calculation of the decoding metric using a Euclidean distance metric (either or both of which may be referred to as a spinal decoder metric), during a bubble decoder process, the decoding metric may become large on symbols that are unlikely to be an actually received symbol and the nodes with the lowest decoding metrics are the ones that survive the decoder process. Further, and as illustrated by and described in more detail with reference to FIG. 6 , for each symbol there are 2^(k) other hypotheses that a receiving device 210 may make in order decode a correct symbol in each stage. Thus, in some implementations, a transmitting device 205 may focus on the hypotheses giving relatively low decoding metrics or path costs, as these are the hypotheses that may expand the decoding tree at the receiver side and potentially expand wrong codewords during the process.

For example, during encoding, an encoder of a transmitting device 205 may check the cost of a quantity of decoding hypothesis symbols (which may be equivalently referred to as decoding hypotheses or candidate symbol values 605), such as 2^(k) decoding hypothesis symbols, and may mark one or more symbol hypotheses with a path cost satisfying a threshold, such as path cost<th₁, because those hypotheses are the ones that may be mostly likely to diverge a receiver from a correct codeword. The transmitting device may use the one or more marked symbols (which may correspond to or be associated with spines 320) for a next retransmission due to the relatively higher likelihood for the one or more marked symbols to be associated with a relatively higher error probability than other symbols.

A transmitting device 205 may detect or determine one or more error-prone symbols using one or more of several metrics. In some implementations, for example, a transmitting device 205 may use Euclidean distances between candidate symbol values 605 and a channel measurement 705. Such implementations may be suitable for AWGN or for thermal noise at a receiver. For example, a transmitting device 205 may check another 2^(k) hypotheses or candidate symbol values 605 (in addition to the actually transmitted symbol value) and may calculate a Euclidean distance between each of the other 2^(k) hypotheses or candidate symbol values 605 and the actually transmitted symbol value to determine which hypotheses or candidate symbol values 605 to mark as potentially error prone and which a receiving device 210 may likely be able to prune on its own.

For example, a transmitting device 205 may calculate that a candidate bit value 01 is associated with a relatively large distance and that a candidate symbol value 605 corresponding to the candidate bit value 01 will likely be pruned at the decoder. For further example, the transmitting device 205 may calculate that candidate bit values 10 and 11, although incorrect bit values, correspond to candidate symbol values 605 having a relatively short distance to an originally or actually transmitted symbol and may assume or infer that hypotheses corresponding to these candidate bit values are relatively more likely to survive and diverge at the receiving device 210. Thus, for a (next or subsequent) retransmission, the transmitting device 205 may update its puncturing scheme to retransmit this symbol (to potentially provide the receiving device 210 with more information with which to select a correct candidate bit value, which may be 00 in this example).

Additionally, or alternatively, a transmitting device 205 may use waveform types or phase differences to identify or determine which symbols to mark for a retransmission. For example, a single carrier (SC)-OFDM small phase difference may be problematic for large phase noise. Additionally, or alternatively, a transmitting device 205 may use decoding capabilities of a receiving device to identify or determine which symbols to mark for a retransmission. For example, the transmitting device 205 may use bubble decoder capabilities, such as if a B parameter satisfies a threshold (such as is large enough), and may refrain from pruning a single symbol with high error probability if the B parameter satisfies the threshold. Further, to support such a transmitter-side detection or determination of which candidate symbol values 605 may be associated with relatively greater likelihoods for diverging at a receiving device 210 from a correct codeword, a receiving device 210 may signal some decoder parameters to a transmitting device 205. For example, a receiving device 210 may transmit, to a transmitting device 205, an indication of a phase noise measured at (and experienced by) the receiving device 210 or a decoding capability (such as bubble decoder capabilities) of the receiving device 210, or both.

The transmitting device 205 may signal, to the receiving device 210, locations of the one or more symbols or symbol values 330 that are marked for the retransmission via control signaling, such as via a PDCCH DCI packet. In some aspects, a transmitting device 205 may optionally boost a transmit power for the one or more marked and retransmitted symbols or spines 320. The receiving device 210 may reduce decoder complexity by saving previous states (such as previous decoding hypotheses) of the decoding procedure up until the retransmission state (the decoding stage associated with the one or more locations of the one or more marked symbols) and may resume or continue the decoder process starting at the retransmission state (on one or more later retransmissions).

FIG. 8 shows an example puncturing scheme adaptation 800 that supports transmission puncturing schemes for rateless coding. The puncturing scheme adaptation 800 may be implemented to realize aspects of the wireless communication system 100 or the signaling diagram 200. For example, a transmitting device 205 and a receiving device 210 may implement the puncturing scheme adaptation 800 to update, adjust, or otherwise modify a transmission puncturing scheme for a message encoded according to a rateless coding scheme in accordance with receiver feedback indicating one or more symbols or spines 320 that the receiving device 210 identified as having a relatively higher priority for retransmission (as compared to other symbols or spines 320).

For example, a transmitting device 205 may initially signal a puncturing scheme 805-a, which may be an example of an ordered list of transmitted symbol values 330 or spines 320, where each index of the puncturing scheme 805-a represents or corresponds to a different symbol or spine index. For instance, an index of 64 may represent or indicate a transmission of signaling associated with a 64^(th) spine 320 during a first transmission occasion 335, an index of 56 may represent or indicate a transmission of signaling associated with a 56^(th) spine 320 during a second transmission occasion 335, and so on. As illustrated by FIG. 8 , a current transmission N may include transmitting signaling associated with a modulation symbol associated with the 64^(th) spine 320.

In some implementations, a decoder of the receiving device 210 may identify, from the transmission N, that a decoding stage corresponding to a modulation symbol associated with a 36^(th) spine 320 has a path cost that satisfies a path cost threshold (such as a path cost>th₁) and may report, to the transmitting device 205, a location (such as an index value) of the 36^(th) spine 320. Such a reported location may represent, in high probability, a highest priority spine 320 or coding index for retransmission by the transmitting device 205. In some implementations, the receiving device 210 may transmit an indication of the coding index via a feedback report, such as via a field in a NACK message (such that the feedback for the symbol being a high priority symbol or spine 320 for retransmission is augmented to a NACK message) sent over a physical uplink shared channel (PUSCH) or a physical uplink control channel (PUCCH).

The transmitting device 205, in accordance with receiving the indication from the receiving device 210, may modify the puncturing scheme 805-a (the puncturing ordered list) and insert the priority symbol index (corresponding to the 36^(th) spine 320) as part of a next transmission N+1 (a retransmission) during a pre-processing for the transmission N+1. For example, and as illustrated by FIG. 8 , the transmitting device may perform an update 810 to move the 36^(th) spine 320 up to the second transmission occasion 335 previously occupied by the 56^(th) spine 320, and may move each spine 320 starting with the 56^(th) spine 320 down one transmission occasion 335 to adapt the puncturing scheme 805 to the new transmission occasion 335 granted for the 36^(th) spine 320. Accordingly, the transmitting device 205 and the receiving device 210 may communicate in accordance with an updated puncturing scheme 805-b for (such as starting with) the transmission N+1, which may include transmitting signaling associated with a modulation symbol associated with the 36^(th) spine 320 in accordance with the update 810.

FIG. 9 shows an example process flow 900 that supports transmission puncturing schemes for rateless coding. The process flow 900 may implement or be implemented to realize aspects of the wireless communications system 100 or the signaling diagram 200. For example, the process flow 900 illustrates communication between a transmitting device 205 and a receiving device 210. In some implementations, the transmitting device 205 may encode a data message using a rateless code, such as a spinal code, and the transmitting device 205 and the receiving device 210 may exchange signaling associated with supporting or facilitating the use of the rateless code for wireless signaling between the transmitting device 205 and the receiving device 210.

In the following description of the process flow 900, the operations may be performed (such as reported or provided) in a different order than the order shown, or the operations performed by the example devices may be performed in different orders or at different times. Some operations also may be omitted from the process flow 900, or other operations may be added to the process flow 900. Further, although some operations or signaling may be shown to occur at different times for discussion purposes, these operations may actually occur at the same time or otherwise concurrently.

At 905, the transmitting device 205 may transmit, to the receiving device 210, an indication of a transmission puncturing scheme associated with a rateless coding of communications. In some implementations, for example, the transmitting device 205 may transmit an indication of a pattern, over multiple occasions of the transmission puncturing scheme, of a set of coding indices of the rateless coding. In some implementations, each coding index of the set of coding indices may correspond to a cumulative encoding of a respective quantity of message segments. In some aspects, such a rateless coding may be an example of spinal coding. A coding index of the rateless coding may refer to a coding stage (such as an encoding stage or a decoding stage) of the rateless coding, and may correspond to or be associated with a spine 320 or symbol value 330 output of a spinal encoder or decoder. In various examples one or more indications of 905 may be transmitted in RRC signaling, DCI signaling, or various combinations thereof, among other signaling techniques.

At 910, the transmitting device 205 may transmit, to the receiving device 210, signals (such as encoded signals 215, which may be associated with a data payload of a message 305) associated with a message encoded in accordance with the rateless coding. In some implementations, the transmitted signals may be associated with an encoding that corresponds to the indicated transmission puncturing scheme. For example, transmitting the encoded signals of 910 may include performing a first transmission, in accordance with or during a first occasion of the transmission puncturing scheme, that is associated with one or more first coding indices. In some implementations, transmitting the encoding signals at 910 may include or be an example of performing a second transmission, in accordance with or during a second occasion of the transmission puncturing scheme, that is associated with one or more second coding indices. In some aspects, the one or more second coding indices may be different than the one or more first coding indices. For example, the transmitting device 205 may transmit signaling associated with different spines 320 at different occasions (such as transmission occasions 335) of the transmission puncturing scheme. Alternatively, the one or more second coding indices may be the same as the one or more first coding indices (such as in scenarios in which a transmission of the signaling associated with the message has wrapped around).

In some implementations, at 915, the receiving device 210 may perform a decoding attempt for the received first transmission. In some aspects, the receiving device 210 may measure, detect, identify, or otherwise determine, as a result of the decoding attempt, a coding index (such as a spine index) of the rateless coding that is associated with a decoding metric (such as a path cost) that satisfies (such as exceeds) a decoding metric threshold.

In some implementations, at 920, the receiving device 210 may transmit, to the transmitting device 205, an indication of the coding index that the receiving device 210 measured, detected, identified, or otherwise determined to have the decoding metric satisfying the decoding metric threshold. For example, the receiving device 210 may provide the transmitting device 205 with a feedback report indicating which coding index is associated with a relatively highest priority for retransmission, and such a coding index may be a coding index at which the decoding metric calculated by the receiving device begins to increase or satisfies a threshold decoding metric. Such a threshold decoding metric may be a decoding metric value or may be a rate of change of a decoding metric (such that satisfying the decoding metric threshold may result from a decoding metric increasing by a threshold rate).

In some implementations, at 925, the transmitting device 205 may transmit, to the receiving device 210, an indication to modify the pattern of the coding indices of the transmission puncturing scheme. For example, the transmitting device 205 may modify the pattern of the transmission puncturing scheme, and transmit an indication of the modified pattern to the receiving device 210 in accordance with or as a result of receiving the indication of the coding index at 920. In some implementations, modifying the pattern may include adjusting the pattern such that a modulation symbol or spine 320 associated with the indicated coding index is scheduled for retransmission in a next occasion of the transmission puncturing scheme. In some aspects, the transmitting device 205 may perform another transmission (such as a second transmission) in accordance with the modified pattern (such that the second transmission includes a transmission of signaling associated with the indicated coding index).

In some implementations, at 930, the transmitting device 205 may transmit, to the receiving device 210, a control message indicating one or more decoding hypotheses associated with one or more coding indices. For example, the transmitting device 205 may identify, detect, or otherwise determine that some decoding hypotheses that the receiving device 210 may use during a decoding process may be likely to cause a divergence at the receiving device 210 from a correct codeword. In such implementations, the transmitting device 205 may mark a symbol or spine 320 (such as via a coding index) associated with such error prone decoding hypotheses and may transmit an indication of the error prone decoding hypotheses to the receiving device 210. The transmitting device 205 and the receiving device 210 may update the pattern (such as the transmission puncturing scheme) in accordance with the indicated error prone decoding hypotheses. For example, the transmitting device 205 and the receiving device 210 may expect that a next (re)transmission associated with the message will include signaling associated with the symbol or spine 320 associated with such error prone decoding hypotheses in accordance with or as a result of exchanging signaling identifying the error prone decoding hypotheses.

At 935, the transmitting device 205 may transmit, to the receiving device 210, another transmission (such as a retransmission) of signals (such as encoded signals) associated with the message. In some implementations, transmitting the encoding signals at 935 may be an example of performing a second transmission, in accordance with or during a second occasion of the transmission puncturing scheme, that is associated with one or more second coding indices. In some aspects, the one or more second coding indices may be different than the one or more first coding indices (such as the coding indices associated with the transmission of 910).

FIG. 10 shows a block diagram 1000 of an example device 1005 that supports transmission puncturing schemes for rateless coding. The device 1005 may communicate wirelessly with one or more BSs 105, UEs 115, or any combination thereof. The device 1005 may include components for bi-directional voice and data communications including components for transmitting and receiving communications, such as a communications manager 1020, an input/output (I/O) controller 1010, a transceiver 1015, an antenna 1025, a memory 1030, code 1035, and a processor 1040. These components may be in electronic communication or otherwise coupled (such as operatively, communicatively, functionally, electronically, electrically) via one or more buses (such as a bus 1045).

The I/O controller 1010 may manage input and output signals for the device 1005. The I/O controller 1010 also may manage peripherals not integrated into the device 1005. In some implementations, the I/O controller 1010 may represent a physical connection or port to an external peripheral. In some implementations, the I/O controller 1010 may utilize an operating system such as iOS®, ANDROID®, MS-DOS®, MS-WINDOWS®, OS/2®, UNIX®, LINUX®, or another known operating system. Additionally, or alternatively, the I/O controller 1010 may represent or interact with a modem, a keyboard, a mouse, a touchscreen, or a similar device. In some implementations, the I/O controller 1010 may be implemented as part of a processor or processing system, such as the processor 1040. In some implementations, a user may interact with the device 1005 via the I/O controller 1010 or via hardware components controlled by the I/O controller 1010.

In some implementations, the device 1005 may include a single antenna 1025. However, in some other implementations, the device 1005 may have more than one antenna 1025, which may be capable of concurrently transmitting or receiving multiple wireless transmissions. The transceiver 1015 may communicate bi-directionally, via the one or more antennas 1025, wired, or wireless links as described herein. For example, the transceiver 1015 may represent a wireless transceiver and may communicate bi-directionally with another wireless transceiver. The transceiver 1015 also may include a modem to modulate the packets, to provide the modulated packets to one or more antennas 1025 for transmission, and to demodulate packets received from the one or more antennas 1025.

In some implementations, the transceiver 1015 may include one or more interfaces, such as one or more interfaces coupled with the one or more antennas 1025 that are configured to support various receiving or obtaining operations, or one or more interfaces coupled with the one or more antennas 1025 that are configured to support various transmitting or outputting operations, or a combination thereof. In some implementations, the transceiver 1015 may include or be configured for coupling with one or more processors or memory components that are operable to perform or support operations based on received or obtained information or signals, or to generate information or other signals for transmission or other outputting, or any combination thereof. In some implementations, the transceiver 1015, or the transceiver 1015 and the one or more antennas 1025, or the transceiver 1015 and the one or more antennas 1025 and one or more processors or memory components (such as the processor 1040, or the memory 1030, or both), may be included in a chip or chip assembly that is installed in the device 1005.

The memory 1030 may include random access memory (RAM) and read-only memory (ROM). The memory 1030 may store computer-readable, computer-executable code 1035 including instructions that, when executed by the processor 1040, cause the device 1005 to perform various functions described herein. The code 1035 may be stored in a non-transitory computer-readable medium such as system memory or another type of memory. In some implementations, the code 1035 may not be directly executable by the processor 1040 but may cause a computer (such as when compiled and executed) to perform functions described herein. In some implementations, the memory 1030 may contain, among other things, a basic I/O system (BIOS) which may control basic hardware or software operation such as the interaction with peripheral components or devices.

The processor 1040 may be any one or more suitable processors capable of executing scripts or instructions of one or more software programs stored in the device 1005 (such as within the memory 1030). In some implementations, the processor 1040 may be a component of a processing system. A processing system may generally refer to a system or series of machines or components that receives inputs and processes the inputs to produce a set of outputs (which may be passed to other systems or components of, for example, the device 1005). For example, a processing system of the device 1005 may refer to a system including the various other components or subcomponents of the device 1005, such as the processor 1040, or the transceiver 1015, or the communications manager 1020, or other components or combinations of components of the device 1005.

The processing system of the device 1005 may interface with other components of the device 1005, and may process information received from other components (such as inputs or signals) or output information to other components. For example, a chip or modem of the device 1005 may include a processing system, a first interface to output information, and a second interface to obtain information. In some implementations, the first interface may refer to an interface between the processing system of the chip or modem and a transmitter, such that the device 1005 may transmit information output from the chip or modem. In some implementations, the second interface may refer to an interface between the processing system of the chip or modem and a receiver, such that the device 1005 may obtain information or signal inputs, and the information may be passed to the processing system. A person having ordinary skill in the art will readily recognize that the first interface also may obtain information or signal inputs, and the second interface also may output information or signal outputs.

The communications manager 1020 may support wireless communication at a wireless device in accordance with examples as disclosed herein. For example, the communications manager 1020 may be configured as or otherwise support a means for receiving an indication of a transmission puncturing scheme associated with a rateless coding of communications. The communications manager 1020 may be configured as or otherwise support a means for receiving one or more signals associated with a message encoded in accordance with the rateless coding, where the received one or more signals are associated with an encoding that corresponds to the indicated transmission puncturing scheme.

In some implementations, to support receiving the indication of the transmission puncturing scheme, the communications manager 1020 may be configured as or otherwise support a means for receiving an indication of a pattern, over a set of multiple occasions of the transmission puncturing scheme, of a set of multiple coding indices of the rateless coding, each coding index of the set of multiple coding indices corresponding to a cumulative encoding of a respective quantity of message segments.

In some implementations, to support receiving the one or more signals associated with the message, the communications manager 1020 may be configured as or otherwise support a means for receiving a first transmission, in accordance with a first occasion of the set of multiple occasions of the transmission puncturing scheme, that is associated with one or more first coding indices of the set of multiple coding indices. In some implementations, to support receiving the one or more signals associated with the message, the communications manager 1020 may be configured as or otherwise support a means for receiving a second transmission, in accordance with a second occasion of the set of multiple occasions of the transmission puncturing scheme, that is associated with one or more second coding indices of the set of multiple coding indices that are different than the one or more first coding indices.

In some implementations, the one or more first coding indices include a first coding index corresponding to a cumulative encoding of a set of multiple segments associated with an entirety of the message and the one or more second coding indices include a second coding index corresponding to a cumulative encoding of a subset of the set of multiple segments.

In some implementations, the communications manager 1020 may be configured as or otherwise support a means for performing a decoding attempt for the received first transmission. In some implementations, the communications manager 1020 may be configured as or otherwise support a means for transmitting an indication of a coding index of the set of multiple coding indices that is associated with a decoding metric of the decoding attempt that satisfies a decoding metric threshold, where the second transmission is associated with transmitting the indication of the coding index.

In some implementations, the communications manager 1020 may be configured as or otherwise support a means for receiving an indication to modify the pattern of the set of multiple coding indices in accordance with transmitting the indication of the coding index that is associated with the decoding metric satisfying the decoding metric threshold.

In some implementations, the communications manager 1020 may be configured as or otherwise support a means for receiving a control message indicating one or more decoding hypotheses associated with one or more coding indices. In some implementations, the communications manager 1020 may be configured as or otherwise support a means for performing a decoding procedure on the received second transmission in accordance with the one or more decoding hypotheses associated with the one or more coding indices.

In some implementations, the communications manager 1020 may be configured as or otherwise support a means for attempting to decode the one or more signals associated with the message in accordance with a coding index of the set of multiple coding indices corresponding to an occasion of the set of multiple occasions of the transmission puncturing scheme.

In some implementations, to support attempting to decode the one or more signals, the communications manager 1020 may be configured as or otherwise support a means for obtaining, as an output of a hash function associated with the coding index corresponding to the occasion of the transmission puncturing scheme, a set of candidate encoded values in accordance with inputting, into the hash function, a seed value and a set of candidate bit values for one or more segments of the message that are associated with the coding index. In some implementations, to support attempting to decode the one or more signals, the communications manager 1020 may be configured as or otherwise support a means for obtaining, as an output of a numeric transposition function, a set of candidate constellation points associated with the occasion of the transmission puncturing scheme in accordance with inputting, into the numeric transposition function, each of the set of candidate encoded values.

In some implementations, to support attempting to decode the one or more signals, the communications manager 1020 may be configured as or otherwise support a means for comparing a measurement of the one or more signals associated with the message with each constellation point of the set of candidate constellation points. In some implementations, to support attempting to decode the one or more signals, the communications manager 1020 may be configured as or otherwise support a means for identifying a constellation point from the set of candidate constellation points associated with a shortest Euclidean distance between the constellation point and the measurement of the one or more signals.

In some implementations, the communications manager 1020 may be configured as or otherwise support a means for storing, at the wireless device, one or more decoding hypotheses associated with one or more coding indices prior to the coding index corresponding to the occasion of the transmission puncturing scheme. In some implementations, the communications manager 1020 may be configured as or otherwise support a means for receiving a transmission, in accordance with the occasion of the transmission puncturing scheme, that is associated with the coding index, where attempting to decode the one or more signals associated with the message in accordance with the coding index is associated with storing the one or more decoding hypotheses and receiving the transmission in accordance with the occasion of the transmission puncturing scheme.

In some implementations, the indication of the transmission puncturing scheme is received via one or both of RRC signaling or DCI.

Additionally, or alternatively, the communications manager 1020 may support wireless communication at a wireless device in accordance with examples as disclosed herein. For example, the communications manager 1020 may be configured as or otherwise support a means for transmitting an indication of a transmission puncturing scheme associated with a rateless coding of communications. The communications manager 1020 may be configured as or otherwise support a means for transmitting one or more signals associated with a message encoded in accordance with the rateless coding, where the transmitted one or more signals are associated with an encoding that corresponds to the indicated transmission puncturing scheme.

In some implementations, to support transmitting the indication of the transmission puncturing scheme, the communications manager 1020 may be configured as or otherwise support a means for transmitting an indication of a pattern, over a set of multiple occasions of the transmission puncturing scheme, of a set of multiple coding indices of the rateless coding, each coding index of the set of multiple coding indices corresponding to a cumulative encoding of a respective quantity of message segments.

In some implementations, to support transmitting the one or more signals associated with the message, the communications manager 1020 may be configured as or otherwise support a means for performing a first transmission, in accordance with a first occasion of the set of multiple occasions of the transmission puncturing scheme, that is associated one or more first coding indices of the set of multiple coding indices. In some implementations, to support transmitting the one or more signals associated with the message, the communications manager 1020 may be configured as or otherwise support a means for performing a second transmission, in accordance with a second occasion of the set of multiple occasions of the transmission puncturing scheme, that is associated with one or more second coding indices of the set of multiple coding indices that are different than the one or more first coding indices.

In some implementations, the one or more first coding indices include a first coding index corresponding to a cumulative encoding of a set of multiple segments associated with an entirety of the message and the one or more second coding indices include a second coding index corresponding to a cumulative encoding of a subset of the set of multiple segments.

In some implementations, the communications manager 1020 may be configured as or otherwise support a means for receiving an indication of a coding index of the set of multiple coding indices that is associated with a decoding metric of a decoding attempt that satisfies a decoding metric threshold, where performing the second transmission is associated with receiving the indication of the coding index.

In some implementations, the communications manager 1020 may be configured as or otherwise support a means for transmitting an indication to modify the pattern of the set of multiple coding indices in accordance with receiving the indication of the coding index that is associated with the decoding metric satisfying the decoding metric threshold.

In some implementations, the communications manager 1020 may be configured as or otherwise support a means for transmitting a control message indicating one or more decoding hypotheses associated with one or more coding indices. In some implementations, the communications manager 1020 may be configured as or otherwise support a means for performing a transmission in accordance with an occasion of the transmission puncturing scheme corresponding to the one or more coding indices.

In some implementations, transmitting the control message and performing the transmission are based on identifying that the one or more decoding hypotheses associated with the one or more coding indices have an error probability that satisfies a threshold error probability.

In some implementations, the communications manager 1020 may be configured as or otherwise support a means for encoding the one or more signals associated with the message in accordance with a coding index of the set of multiple coding indices corresponding to an occasion of the set of multiple occasions of the transmission puncturing scheme.

In some implementations, to support encoding, the communications manager 1020 may be configured as or otherwise support a means for obtaining, as an output of a hash function associated with the coding index corresponding to the occasion of the transmission puncturing scheme, an encoded value in accordance with inputting, into the hash function, a seed value and a bit value for one or more segments of the message that are associated with the coding index. In some implementations, to support encoding, the communications manager 1020 may be configured as or otherwise support a means for obtaining, as an output of a numeric transposition function, a constellation point associated with the occasion of the transmission puncturing scheme in accordance with inputting, into the numeric transposition function, the encoded value. In some implementations, to support encoding, the communications manager 1020 may be configured as or otherwise support a means for mapping the constellation point to a communication resource for transmission.

In some implementations, the indication of the transmission puncturing scheme is transmitted via one or both of RRC signaling or DCI.

In some implementations, the communications manager 1020 may be configured to perform various operations (such as receiving, monitoring, transmitting) using or otherwise in cooperation with the transceiver 1015, the one or more antennas 1025, or any combination thereof. Although the communications manager 1020 is illustrated as a separate component, in some implementations, one or more functions described with reference to the communications manager 1020 may be supported by or performed by the processor 1040, the memory 1030, the code 1035, or any combination thereof. For example, the code 1035 may include instructions executable by the processor 1040 to cause the device 1005 to perform various aspects of transmission puncturing schemes for rateless coding as described herein, or the processor 1040 and the memory 1030 may be otherwise configured to perform or support such operations.

FIG. 11 shows a block diagram 1100 of an example device 1105 that supports transmission puncturing schemes for rateless coding. The device 1105 may communicate wirelessly with one or more BSs 105, UEs 115, or any combination thereof. The device 1105 may include components for bi-directional voice and data communications including components for transmitting and receiving communications, such as a communications manager 1120, a network communications manager 1110, a transceiver 1115, an antenna 1125, a memory 1130, code 1135, a processor 1140, and an inter-station communications manager 1145. These components may be in electronic communication or otherwise coupled (such as operatively, communicatively, functionally, electronically, electrically) via one or more buses (such as a bus 1150).

The network communications manager 1110 may manage communications with a core network 130 (such as via one or more wired backhaul links). For example, the network communications manager 1110 may manage the transfer of data communications for client devices, such as one or more UEs 115.

In some implementations, the device 1105 may include a single antenna 1125. However, in some other implementations, the device 1105 may have more than one antenna 1125, which may be capable of concurrently transmitting or receiving multiple wireless transmissions. The transceiver 1115 may communicate bi-directionally, via the one or more antennas 1125, wired, or wireless links as described herein. For example, the transceiver 1115 may represent a wireless transceiver and may communicate bi-directionally with another wireless transceiver. The transceiver 1115 also may include a modem to modulate the packets, to provide the modulated packets to one or more antennas 1125 for transmission, and to demodulate packets received from the one or more antennas 1125.

In some implementations, the transceiver 1115 may include one or more interfaces, such as one or more interfaces coupled with the one or more antennas 1125 that are configured to support various receiving or obtaining operations, or one or more interfaces coupled with the one or more antennas 1125 that are configured to support various transmitting or outputting operations, or a combination thereof. In some implementations, the transceiver 1115 may include or be configured for coupling with one or more processors or memory components that are operable to perform or support operations based on received or obtained information or signals, or to generate information or other signals for transmission or other outputting, or any combination thereof. In some implementations, the transceiver 1115, or the transceiver 1115 and the one or more antennas 1125, or the transceiver 1115 and the one or more antennas 1125 and one or more processors or memory components (such as the processor 1140, or the memory 1130, or both), may be included in a chip or chip assembly that is installed in the device 1105.

The memory 1130 may include RAM and ROM. The memory 1130 may store computer-readable, computer-executable code 1135 including instructions that, when executed by the processor 1140, cause the device 1105 to perform various functions described herein. The code 1135 may be stored in a non-transitory computer-readable medium such as system memory or another type of memory. In some implementations, the code 1135 may not be directly executable by the processor 1140 but may cause a computer (such as when compiled and executed) to perform functions described herein. In some implementations, the memory 1130 may contain, among other things, a BIOS which may control basic hardware or software operation such as the interaction with peripheral components or devices.

The processor 1140 may be any one or more suitable processors capable of executing scripts or instructions of one or more software programs stored in the device 1105 (such as within the memory 1130). In some implementations, the processor 1140 may be a component of a processing system. A processing system may generally refer to a system or series of machines or components that receives inputs and processes the inputs to produce a set of outputs (which may be passed to other systems or components of, for example, the device 1105). For example, a processing system of the device 1105 may refer to a system including the various other components or subcomponents of the device 1105, such as the processor 1140, or the transceiver 1115, or the communications manager 1120, or other components or combinations of components of the device 1105.

The processing system of the device 1105 may interface with other components of the device 1105, and may process information received from other components (such as inputs or signals) or output information to other components. For example, a chip or modem of the device 1105 may include a processing system, a first interface to output information, and a second interface to obtain information. In some implementations, the first interface may refer to an interface between the processing system of the chip or modem and a transmitter, such that the device 1105 may transmit information output from the chip or modem. In some implementations, the second interface may refer to an interface between the processing system of the chip or modem and a receiver, such that the device 1105 may obtain information or signal inputs, and the information may be passed to the processing system. A person having ordinary skill in the art will readily recognize that the first interface also may obtain information or signal inputs, and the second interface also may output information or signal outputs.

The inter-station communications manager 1145 may manage communications with other BSs 105, and may include a controller or scheduler for controlling communications with UEs 115 in cooperation with other BSs 105. For example, the inter-station communications manager 1145 may coordinate scheduling for transmissions to UEs 115 for various interference mitigation techniques such as beamforming or joint transmission. In some implementations, the inter-station communications manager 1145 may provide an X2 interface within an LTE/LTE-A wireless communications network technology to provide communication between BSs 105.

The communications manager 1120 may support wireless communication at a wireless device in accordance with examples as disclosed herein. For example, the communications manager 1120 may be configured as or otherwise support a means for receiving an indication of a transmission puncturing scheme associated with a rateless coding of communications. The communications manager 1120 may be configured as or otherwise support a means for receiving one or more signals associated with a message encoded in accordance with the rateless coding, where the received one or more signals are associated with an encoding that corresponds to the indicated transmission puncturing scheme.

In some implementations, to support receiving the indication of the transmission puncturing scheme, the communications manager 1120 may be configured as or otherwise support a means for receiving an indication of a pattern, over a set of multiple occasions of the transmission puncturing scheme, of a set of multiple coding indices of the rateless coding, each coding index of the set of multiple coding indices corresponding to a cumulative encoding of a respective quantity of message segments.

In some implementations, to support receiving the one or more signals associated with the message, the communications manager 1120 may be configured as or otherwise support a means for receiving a first transmission, in accordance with a first occasion of the set of multiple occasions of the transmission puncturing scheme, that is associated with one or more first coding indices of the set of multiple coding indices. In some implementations, to support receiving the one or more signals associated with the message, the communications manager 1120 may be configured as or otherwise support a means for receiving a second transmission, in accordance with a second occasion of the set of multiple occasions of the transmission puncturing scheme, that is associated with one or more second coding indices of the set of multiple coding indices that are different than the one or more first coding indices.

In some implementations, the one or more first coding indices include a first coding index corresponding to a cumulative encoding of a set of multiple segments associated with an entirety of the message and the one or more second coding indices include a second coding index corresponding to a cumulative encoding of a subset of the set of multiple segments.

In some implementations, the communications manager 1120 may be configured as or otherwise support a means for performing a decoding attempt for the received first transmission. In some implementations, the communications manager 1120 may be configured as or otherwise support a means for transmitting an indication of a coding index of the set of multiple coding indices that is associated with a decoding metric of the decoding attempt that satisfies a decoding metric threshold, where the second transmission is associated with transmitting the indication of the coding index.

In some implementations, the communications manager 1120 may be configured as or otherwise support a means for receiving an indication to modify the pattern of the set of multiple coding indices in accordance with transmitting the indication of the coding index that is associated with the decoding metric satisfying the decoding metric threshold.

In some implementations, the communications manager 1120 may be configured as or otherwise support a means for receiving a control message indicating one or more decoding hypotheses associated with one or more coding indices. In some implementations, the communications manager 1120 may be configured as or otherwise support a means for performing a decoding procedure on the received second transmission in accordance with the one or more decoding hypotheses associated with the one or more coding indices.

In some implementations, the communications manager 1120 may be configured as or otherwise support a means for attempting to decode the one or more signals associated with the message in accordance with a coding index of the set of multiple coding indices corresponding to an occasion of the set of multiple occasions of the transmission puncturing scheme.

In some implementations, to support attempting to decode the one or more signals, the communications manager 1120 may be configured as or otherwise support a means for obtaining, as an output of a hash function associated with the coding index corresponding to the occasion of the transmission puncturing scheme, a set of candidate encoded values in accordance with inputting, into the hash function, a seed value and a set of candidate bit values for one or more segments of the message that are associated with the coding index. In some implementations, to support attempting to decode the one or more signals, the communications manager 1120 may be configured as or otherwise support a means for obtaining, as an output of a numeric transposition function, a set of candidate constellation points associated with the occasion of the transmission puncturing scheme in accordance with inputting, into the numeric transposition function, each of the set of candidate encoded values.

In some implementations, to support attempting to decode the one or more signals, the communications manager 1120 may be configured as or otherwise support a means for comparing a measurement of the one or more signals associated with the message with each constellation point of the set of candidate constellation points. In some implementations, to support attempting to decode the one or more signals, the communications manager 1120 may be configured as or otherwise support a means for identifying a constellation point from the set of candidate constellation points associated with a shortest Euclidean distance between the constellation point and the measurement of the one or more signals.

In some implementations, the communications manager 1120 may be configured as or otherwise support a means for storing, at the wireless device, one or more decoding hypotheses associated with one or more coding indices prior to the coding index corresponding to the occasion of the transmission puncturing scheme. In some implementations, the communications manager 1120 may be configured as or otherwise support a means for receiving a transmission, in accordance with the occasion of the transmission puncturing scheme, that is associated with the coding index, where attempting to decode the one or more signals associated with the message in accordance with the coding index is associated with storing the one or more decoding hypotheses and receiving the transmission in accordance with the occasion of the transmission puncturing scheme.

In some implementations, the indication of the transmission puncturing scheme is received via one or both of RRC signaling or DCI.

Additionally, or alternatively, the communications manager 1120 may support wireless communication at a wireless device in accordance with examples as disclosed herein. For example, the communications manager 1120 may be configured as or otherwise support a means for transmitting an indication of a transmission puncturing scheme associated with a rateless coding of communications. The communications manager 1120 may be configured as or otherwise support a means for transmitting one or more signals associated with a message encoded in accordance with the rateless coding, where the transmitted one or more signals are associated with an encoding that corresponds to the indicated transmission puncturing scheme.

In some implementations, to support transmitting the indication of the transmission puncturing scheme, the communications manager 1120 may be configured as or otherwise support a means for transmitting an indication of a pattern, over a set of multiple occasions of the transmission puncturing scheme, of a set of multiple coding indices of the rateless coding, each coding index of the set of multiple coding indices corresponding to a cumulative encoding of a respective quantity of message segments.

In some implementations, to support transmitting the one or more signals associated with the message, the communications manager 1120 may be configured as or otherwise support a means for performing a first transmission, in accordance with a first occasion of the set of multiple occasions of the transmission puncturing scheme, that is associated one or more first coding indices of the set of multiple coding indices. In some implementations, to support transmitting the one or more signals associated with the message, the communications manager 1120 may be configured as or otherwise support a means for performing a second transmission, in accordance with a second occasion of the set of multiple occasions of the transmission puncturing scheme, that is associated with one or more second coding indices of the set of multiple coding indices that are different than the one or more first coding indices.

In some implementations, the one or more first coding indices include a first coding index corresponding to a cumulative encoding of a set of multiple segments associated with an entirety of the message and the one or more second coding indices include a second coding index corresponding to a cumulative encoding of a subset of the set of multiple segments.

In some implementations, the communications manager 1120 may be configured as or otherwise support a means for receiving an indication of a coding index of the set of multiple coding indices that is associated with a decoding metric of a decoding attempt that satisfies a decoding metric threshold, where performing the second transmission is associated with receiving the indication of the coding index.

In some implementations, the communications manager 1120 may be configured as or otherwise support a means for transmitting an indication to modify the pattern of the set of multiple coding indices in accordance with receiving the indication of the coding index that is associated with the decoding metric satisfying the decoding metric threshold.

In some implementations, the communications manager 1120 may be configured as or otherwise support a means for transmitting a control message indicating one or more decoding hypotheses associated with one or more coding indices. In some implementations, the communications manager 1120 may be configured as or otherwise support a means for performing a transmission in accordance with an occasion of the transmission puncturing scheme corresponding to the one or more coding indices.

In some implementations, transmitting the control message and performing the transmission are based on identifying that the one or more decoding hypotheses associated with the one or more coding indices have an error probability that satisfies a threshold error probability.

In some implementations, the communications manager 1120 may be configured as or otherwise support a means for encoding the one or more signals associated with the message in accordance with a coding index of the set of multiple coding indices corresponding to an occasion of the set of multiple occasions of the transmission puncturing scheme.

In some implementations, to support encoding, the communications manager 1120 may be configured as or otherwise support a means for obtaining, as an output of a hash function associated with the coding index corresponding to the occasion of the transmission puncturing scheme, an encoded value in accordance with inputting, into the hash function, a seed value and a bit value for one or more segments of the message that are associated with the coding index. In some implementations, to support encoding, the communications manager 1120 may be configured as or otherwise support a means for obtaining, as an output of a numeric transposition function, a constellation point associated with the occasion of the transmission puncturing scheme in accordance with inputting, into the numeric transposition function, the encoded value. In some implementations, to support encoding, the communications manager 1120 may be configured as or otherwise support a means for mapping the constellation point to a communication resource for transmission.

In some implementations, the indication of the transmission puncturing scheme is transmitted via one or both of RRC signaling or DCI.

In some implementations, the communications manager 1120 may be configured to perform various operations (such as receiving, monitoring, transmitting) using or otherwise in cooperation with the transceiver 1115, the one or more antennas 1125, or any combination thereof. Although the communications manager 1120 is illustrated as a separate component, in some implementations, one or more functions described with reference to the communications manager 1120 may be supported by or performed by the processor 1140, the memory 1130, the code 1135, or any combination thereof. For example, the code 1135 may include instructions executable by the processor 1140 to cause the device 1105 to perform various aspects of transmission puncturing schemes for rateless coding as described herein, or the processor 1140 and the memory 1130 may be otherwise configured to perform or support such operations.

FIG. 12 shows a flowchart illustrating an example method 1200 that supports transmission puncturing schemes for rateless coding. The operations of the method 1200 may be implemented by a UE or a BS or its components as described herein. For example, the operations of the method 1200 may be performed by a UE 115 or one or more components of a BS 105 as described with reference to FIGS. 1-11 . In some implementations, a UE or one or more components of a BS may execute a set of instructions to control the functional elements of the UE or one or more components of the BS to perform the described functions. Additionally, or alternatively, the UE or one or more components of the BS may perform aspects of the described functions using special-purpose hardware.

At 1205, the method may include receiving an indication of a transmission puncturing scheme associated with a rateless coding of communications. The operations of 1205 may be performed in accordance with examples as disclosed herein. In some implementations, aspects of the operations of 1205 may be performed by a communications manager 1020 or a communications manager 1120 as described with reference to FIGS. 10 and 11 , respectively.

At 1210, the method may include receiving one or more signals associated with a message encoded in accordance with the rateless coding, where the received one or more signals are associated with an encoding that corresponds to the indicated transmission puncturing scheme. The operations of 1210 may be performed in accordance with examples as disclosed herein. In some implementations, aspects of the operations of 1210 may be performed by a communications manager 1020 or a communications manager 1120 as described with reference to FIGS. 10 and 11 , respectively.

FIG. 13 shows a flowchart illustrating an example method 1300 that supports transmission puncturing schemes for rateless coding. The operations of the method 1300 may be implemented by a UE or a BS or its components as described herein. For example, the operations of the method 1300 may be performed by a UE 115 or one or more components of a BS 105 as described with reference to FIGS. 1-11 . In some implementations, a UE or one or more components of a BS may execute a set of instructions to control the functional elements of the UE or one or more components of the BS to perform the described functions. Additionally, or alternatively, the UE or one or more components of the BS may perform aspects of the described functions using special-purpose hardware.

At 1305, the method may include transmitting an indication of a transmission puncturing scheme associated with a rateless coding of communications. The operations of 1305 may be performed in accordance with examples as disclosed herein. In some implementations, aspects of the operations of 1305 may be performed by a communications manager 1020 or a communications manager 1120 as described with reference to FIGS. 10 and 11 , respectively.

At 1310, the method may include transmitting one or more signals associated with a message encoded in accordance with the rateless coding, where the transmitted one or more signals are associated with an encoding that corresponds to the indicated transmission puncturing scheme. The operations of 1310 may be performed in accordance with examples as disclosed herein. In some implementations, aspects of the operations of 1310 may be performed by a communications manager 1020 or a communications manager 1120 as described with reference to FIGS. 10 and 11 , respectively.

The following provides an overview of some aspects of the present disclosure:

Aspect 1: A method for wireless communication at a wireless device, including: receiving an indication of a transmission puncturing scheme associated with a rateless coding of communications; and receiving one or more signals associated with a message encoded in accordance with the rateless coding, where the received one or more signals are associated with an encoding that corresponds to the indicated transmission puncturing scheme.

Aspect 2: The method of aspect 1, where receiving the indication of the transmission puncturing scheme includes: receiving an indication of a pattern, over a set of multiple occasions of the transmission puncturing scheme, of a set of multiple coding indices of the rateless coding, each coding index of the set of multiple coding indices corresponding to a cumulative encoding of a respective quantity of message segments.

Aspect 3: The method of aspect 2, where receiving the one or more signals associated with the message includes: receiving a first transmission, in accordance with a first occasion of the set of multiple occasions of the transmission puncturing scheme, that is associated with one or more first coding indices of the set of multiple coding indices; and receiving a second transmission, in accordance with a second occasion of the set of multiple occasions of the transmission puncturing scheme, that is associated with one or more second coding indices of the set of multiple coding indices that are different than the one or more first coding indices.

Aspect 4: The method of aspect 3, where the one or more first coding indices include a first coding index corresponding to a cumulative encoding of a set of multiple segments associated with an entirety of the message and the one or more second coding indices include a second coding index corresponding to a cumulative encoding of a subset of the set of multiple segments.

Aspect 5: The method of any of aspects 3 or 4, further including: performing a decoding attempt for the received first transmission; and transmitting an indication of a coding index of the set of multiple coding indices that is associated with a decoding metric of the decoding attempt that satisfies a decoding metric threshold, where the second transmission is associated with transmitting the indication of the coding index.

Aspect 6: The method of aspect 5, further including: receiving an indication to modify the pattern of the set of multiple coding indices in accordance with transmitting the indication of the coding index that is associated with the decoding metric satisfying the decoding metric threshold.

Aspect 7: The method of any of aspects 3-6, further including: receiving a control message indicating one or more decoding hypotheses associated with one or more coding indices; performing a decoding procedure on the received second transmission in accordance with the one or more decoding hypotheses associated with the one or more coding indices.

Aspect 8: The method of any of aspects 2-7, further including: attempting to decode the one or more signals associated with the message in accordance with a coding index of the set of multiple coding indices corresponding to an occasion of the set of multiple occasions of the transmission puncturing scheme.

Aspect 9: The method of aspect 8, where attempting to decode the one or more signals includes: obtaining, as an output of a hash function associated with the coding index corresponding to the occasion of the transmission puncturing scheme, a set of candidate encoded values in accordance with inputting, into the hash function, a seed value and a set of candidate bit values for one or more segments of the message that are associated with the coding index; obtaining, as an output of a numeric transposition function, a set of candidate constellation points associated with the occasion of the transmission puncturing scheme in accordance with inputting, into the numeric transposition function, each of the set of candidate encoded values; comparing a measurement of the one or more signals associated with the message with each constellation point of the set of candidate constellation points; and identifying a constellation point from the set of candidate constellation points associated with a shortest Euclidean distance between the constellation point and the measurement of the one or more signals.

Aspect 10: The method of any of aspects 8 or 9, further including: storing, at the wireless device, one or more decoding hypotheses associated with one or more coding indices prior to the coding index corresponding to the occasion of the transmission puncturing scheme; and receiving a transmission, in accordance with the occasion of the transmission puncturing scheme, that is associated with the coding index, where attempting to decode the one or more signals associated with the message in accordance with the coding index is associated with storing the one or more decoding hypotheses and receiving the transmission in accordance with the occasion of the transmission puncturing scheme.

Aspect 11: The method of any of aspects 1-10, where the indication of the transmission puncturing scheme is received via one or both of RRC signaling or DCI.

Aspect 12: A method for wireless communication at a wireless device, including: transmitting an indication of a transmission puncturing scheme associated with a rateless coding of communications; and transmitting one or more signals associated with a message encoded in accordance with the rateless coding, where the transmitted one or more signals are associated with an encoding that corresponds to the indicated transmission puncturing scheme.

Aspect 13: The method of aspect 12, where transmitting the indication of the transmission puncturing scheme includes: transmitting an indication of a pattern, over a set of multiple occasions of the transmission puncturing scheme, of a set of multiple coding indices of the rateless coding, each coding index of the set of multiple coding indices corresponding to a cumulative encoding of a respective quantity of message segments.

Aspect 14: The method of aspect 13, where transmitting the one or more signals associated with the message includes: performing a first transmission, in accordance with a first occasion of the set of multiple occasions of the transmission puncturing scheme, that is associated one or more first coding indices of the set of multiple coding indices; and performing a second transmission, in accordance with a second occasion of the set of multiple occasions of the transmission puncturing scheme, that is associated with one or more second coding indices of the set of multiple coding indices that are different than the one or more first coding indices.

Aspect 15: The method of aspect 14, where the one or more first coding indices include a first coding index corresponding to a cumulative encoding of a set of multiple segments associated with an entirety of the message and the one or more second coding indices include a second coding index corresponding to a cumulative encoding of a subset of the set of multiple segments.

Aspect 16: The method of any of aspects 14 or 15, further including: receiving an indication of a coding index of the set of multiple coding indices that is associated with a decoding metric of a decoding attempt that satisfies a decoding metric threshold, where performing the second transmission is associated with receiving the indication of the coding index.

Aspect 17: The method of aspect 16, further including: transmitting an indication to modify the pattern of the set of multiple coding indices in accordance with receiving the indication of the coding index that is associated with the decoding metric satisfying the decoding metric threshold.

Aspect 18: The method of any of aspects 13-17, further including: transmitting a control message indicating one or more decoding hypotheses associated with one or more coding indices; and performing a transmission in accordance with an occasion of the transmission puncturing scheme corresponding to the one or more coding indices.

Aspect 19: The method of aspect 18, where transmitting the control message and performing the transmission are based on identifying that the one or more decoding hypotheses associated with the one or more coding indices have an error probability that satisfies a threshold error probability.

Aspect 20: The method of any of aspects 13-19, further including: encoding the one or more signals associated with the message in accordance with a coding index of the set of multiple coding indices corresponding to an occasion of the set of multiple occasions of the transmission puncturing scheme.

Aspect 21: The method of aspect 20, where the encoding includes: obtaining, as an output of a hash function associated with the coding index corresponding to the occasion of the transmission puncturing scheme, an encoded value in accordance with inputting, into the hash function, a seed value and a bit value for one or more segments of the message that are associated with the coding index; obtaining, as an output of a numeric transposition function, a constellation point associated with the occasion of the transmission puncturing scheme in accordance with inputting, into the numeric transposition function, the encoded value; and mapping the constellation point to a communication resource for transmission.

Aspect 22: The method of any of aspects 12-21, where the indication of the transmission puncturing scheme is transmitted via one or both of RRC signaling or DCI.

Aspect 23: An apparatus for wireless communication at a wireless device, including: a processor; memory coupled with the processor; and instructions stored in the memory and executable by the processor to cause the apparatus to: receive an indication of a transmission puncturing scheme associated with a rateless coding of communications; and receive one or more signals associated with a message encoded in accordance with the rateless coding, where the received one or more signals are associated with an encoding that corresponds to the indicated transmission puncturing scheme.

Aspect 24: The apparatus of aspect 23, where the instructions to receive the indication of the transmission puncturing scheme are executable by the processor to cause the apparatus to: receive an indication of a pattern, over a set of multiple occasions of the transmission puncturing scheme, of a set of multiple coding indices of the rateless coding, each coding index of the set of multiple coding indices corresponding to a cumulative encoding of a respective quantity of message segments.

Aspect 25: The apparatus of aspect 24, where the instructions to receive the one or more signals associated with the message are executable by the processor to cause the apparatus to: receive a first transmission, in accordance with a first occasion of the set of multiple occasions of the transmission puncturing scheme, that is associated with one or more first coding indices of the set of multiple coding indices; and receive a second transmission, in accordance with a second occasion of the set of multiple occasions of the transmission puncturing scheme, that is associated with one or more second coding indices of the set of multiple coding indices that are different than the one or more first coding indices.

Aspect 26: The apparatus of aspect 25, where the one or more first coding indices include a first coding index corresponding to a cumulative encoding of a set of multiple segments associated with an entirety of the message and the one or more second coding indices include a second coding index corresponding to a cumulative encoding of a subset of the set of multiple segments.

Aspect 27: The apparatus of any of aspects 25 or 26, where the instructions are further executable by the processor to cause the apparatus to: perform a decoding attempt for the received first transmission; and transmit an indication of a coding index of the set of multiple coding indices that is associated with a decoding metric of the decoding attempt that satisfies a decoding metric threshold, where the second transmission is associated with transmitting the indication of the coding index.

Aspect 28: The apparatus of aspect 27, where the instructions are further executable by the processor to cause the apparatus to: receive an indication to modify the pattern of the set of multiple coding indices in accordance with transmitting the indication of the coding index that is associated with the decoding metric satisfying the decoding metric threshold.

Aspect 29: The apparatus of any of aspects 25-28, where the instructions are further executable by the processor to cause the apparatus to: receive a control message indicating one or more decoding hypotheses associated with one or more coding indices; perform a decoding procedure on the received second transmission in accordance with the one or more decoding hypotheses associated with the one or more coding indices.

Aspect 30: The apparatus of any of aspects 24-29, where the instructions are further executable by the processor to cause the apparatus to: attempt to decode the one or more signals associated with the message in accordance with a coding index of the set of multiple coding indices corresponding to an occasion of the set of multiple occasions of the transmission puncturing scheme.

Aspect 31: The apparatus of aspect 30, where the instructions to attempt to decode the one or more signals are executable by the processor to cause the apparatus to: obtain, as an output of a hash function associated with the coding index corresponding to the occasion of the transmission puncturing scheme, a set of candidate encoded values in accordance with inputting, into the hash function, a seed value and a set of candidate bit values for one or more segments of the message that are associated with the coding index; obtain, as an output of a numeric transposition function, a set of candidate constellation points associated with the occasion of the transmission puncturing scheme in accordance with inputting, into the numeric transposition function, each of the set of candidate encoded values; compare a measurement of the one or more signals associated with the message with each constellation point of the set of candidate constellation points; and identify a constellation point from the set of candidate constellation points associated with a shortest Euclidean distance between the constellation point and the measurement of the one or more signals.

Aspect 32: The apparatus of any of aspects 30 or 31, where the instructions are further executable by the processor to cause the apparatus to: store, at the wireless device, one or more decoding hypotheses associated with one or more coding indices prior to the coding index corresponding to the occasion of the transmission puncturing scheme; and receive a transmission, in accordance with the occasion of the transmission puncturing scheme, that is associated with the coding index, where attempting to decode the one or more signals associated with the message in accordance with the coding index is associated with storing the one or more decoding hypotheses and receiving the transmission in accordance with the occasion of the transmission puncturing scheme.

Aspect 33: The apparatus of any of aspects 23-32, where the indication of the transmission puncturing scheme is received via one or both of RRC signaling or DCI.

Aspect 34: An apparatus for wireless communication at a wireless device, including: a processor; memory coupled with the processor; and instructions stored in the memory and executable by the processor to cause the apparatus to: transmit an indication of a transmission puncturing scheme associated with a rateless coding of communications; and transmit one or more signals associated with a message encoded in accordance with the rateless coding, where the transmitted one or more signals are associated with an encoding that corresponds to the indicated transmission puncturing scheme.

Aspect 35: The apparatus of aspect 34, where the instructions to transmit the indication of the transmission puncturing scheme are executable by the processor to cause the apparatus to: transmit an indication of a pattern, over a set of multiple occasions of the transmission puncturing scheme, of a set of multiple coding indices of the rateless coding, each coding index of the set of multiple coding indices corresponding to a cumulative encoding of a respective quantity of message segments.

Aspect 36: The apparatus of aspect 35, where the instructions to transmit the one or more signals associated with the message are executable by the processor to cause the apparatus to: perform a first transmission, in accordance with a first occasion of the set of multiple occasions of the transmission puncturing scheme, that is associated one or more first coding indices of the set of multiple coding indices; and perform a second transmission, in accordance with a second occasion of the set of multiple occasions of the transmission puncturing scheme, that is associated with one or more second coding indices of the set of multiple coding indices that are different than the one or more first coding indices.

Aspect 37: The apparatus of aspect 36, where the one or more first coding indices include a first coding index corresponding to a cumulative encoding of a set of multiple segments associated with an entirety of the message and the one or more second coding indices include a second coding index corresponding to a cumulative encoding of a subset of the set of multiple segments.

Aspect 38: The apparatus of any of aspects 36 or 37, where the instructions are further executable by the processor to cause the apparatus to: receive an indication of a coding index of the set of multiple coding indices that is associated with a decoding metric of a decoding attempt that satisfies a decoding metric threshold, where performing the second transmission is associated with receiving the indication of the coding index.

Aspect 39: The apparatus of aspect 38, where the instructions are further executable by the processor to cause the apparatus to: transmit an indication to modify the pattern of the set of multiple coding indices in accordance with receiving the indication of the coding index that is associated with the decoding metric satisfying the decoding metric threshold.

Aspect 40: The apparatus of any of aspects 35-39, where the instructions are further executable by the processor to cause the apparatus to: transmit a control message indicating one or more decoding hypotheses associated with one or more coding indices; and perform a transmission in accordance with an occasion of the transmission puncturing scheme corresponding to the one or more coding indices.

Aspect 41: The apparatus of aspect 40, where transmitting the control message and performing the transmission are based on identifying that the one or more decoding hypotheses associated with the one or more coding indices have an error probability that satisfies a threshold error probability.

Aspect 42: The apparatus of any of aspects 35-41, where the instructions are further executable by the processor to cause the apparatus to: encode the one or more signals associated with the message in accordance with a coding index of the set of multiple coding indices corresponding to an occasion of the set of multiple occasions of the transmission puncturing scheme.

Aspect 43: The apparatus of aspect 42, where the instructions to encode are executable by the processor to cause the apparatus to: obtain, as an output of a hash function associated with the coding index corresponding to the occasion of the transmission puncturing scheme, an encoded value in accordance with inputting, into the hash function, a seed value and a bit value for one or more segments of the message that are associated with the coding index; obtain, as an output of a numeric transposition function, a constellation point associated with the occasion of the transmission puncturing scheme in accordance with inputting, into the numeric transposition function, the encoded value; and map the constellation point to a communication resource for transmission.

Aspect 44: The apparatus of any of aspects 34-43, where the indication of the transmission puncturing scheme is transmitted via one or both of RRC signaling or DCI.

Aspect 45: An apparatus for wireless communication at a wireless device, including: means for receiving an indication of a transmission puncturing scheme associated with a rateless coding of communications; and means for receiving one or more signals associated with a message encoded in accordance with the rateless coding, where the received one or more signals are associated with an encoding that corresponds to the indicated transmission puncturing scheme.

Aspect 46: The apparatus of aspect 45, where the means for receiving the indication of the transmission puncturing scheme include: means for receiving an indication of a pattern, over a set of multiple occasions of the transmission puncturing scheme, of a set of multiple coding indices of the rateless coding, each coding index of the set of multiple coding indices corresponding to a cumulative encoding of a respective quantity of message segments.

Aspect 47: The apparatus of aspect 46, where the means for receiving the one or more signals associated with the message include: means for receiving a first transmission, in accordance with a first occasion of the set of multiple occasions of the transmission puncturing scheme, that is associated with one or more first coding indices of the set of multiple coding indices; and means for receiving a second transmission, in accordance with a second occasion of the set of multiple occasions of the transmission puncturing scheme, that is associated with one or more second coding indices of the set of multiple coding indices that are different than the one or more first coding indices.

Aspect 48: The apparatus of aspect 47, where the one or more first coding indices include a first coding index corresponding to a cumulative encoding of a set of multiple segments associated with an entirety of the message and the one or more second coding indices include a second coding index corresponding to a cumulative encoding of a subset of the set of multiple segments.

Aspect 49: The apparatus of any of aspects 47 or 48, further including: means for performing a decoding attempt for the received first transmission; and means for transmitting an indication of a coding index of the set of multiple coding indices that is associated with a decoding metric of the decoding attempt that satisfies a decoding metric threshold, where the second transmission is associated with transmitting the indication of the coding index.

Aspect 50: The apparatus of aspect 49, further including: means for receiving an indication to modify the pattern of the set of multiple coding indices in accordance with transmitting the indication of the coding index that is associated with the decoding metric satisfying the decoding metric threshold.

Aspect 51: The apparatus of any of aspects 47-50, further including: means for receiving a control message indicating one or more decoding hypotheses associated with one or more coding indices; means for performing a decoding procedure on the received second transmission in accordance with the one or more decoding hypotheses associated with the one or more coding indices.

Aspect 52: The apparatus of any of aspects 46-51, further including: means for attempting to decode the one or more signals associated with the message in accordance with a coding index of the set of multiple coding indices corresponding to an occasion of the set of multiple occasions of the transmission puncturing scheme.

Aspect 53: The apparatus of aspect 52, where the means for attempting to decode the one or more signals include: means for obtaining, as an output of a hash function associated with the coding index corresponding to the occasion of the transmission puncturing scheme, a set of candidate encoded values in accordance with inputting, into the hash function, a seed value and a set of candidate bit values for one or more segments of the message that are associated with the coding index; means for obtaining, as an output of a numeric transposition function, a set of candidate constellation points associated with the occasion of the transmission puncturing scheme in accordance with inputting, into the numeric transposition function, each of the set of candidate encoded values; means for comparing a measurement of the one or more signals associated with the message with each constellation point of the set of candidate constellation points; and means for identifying a constellation point from the set of candidate constellation points associated with a shortest Euclidean distance between the constellation point and the measurement of the one or more signals.

Aspect 54: The apparatus of any of aspects 52 or 53, further including: means for storing, at the wireless device, one or more decoding hypotheses associated with one or more coding indices prior to the coding index corresponding to the occasion of the transmission puncturing scheme; and means for receiving a transmission, in accordance with the occasion of the transmission puncturing scheme, that is associated with the coding index, where attempting to decode the one or more signals associated with the message in accordance with the coding index is associated with storing the one or more decoding hypotheses and receiving the transmission in accordance with the occasion of the transmission puncturing scheme.

Aspect 55: The apparatus of any of aspects 45-54, where the indication of the transmission puncturing scheme is received via one or both of RRC signaling or DCI.

Aspect 56: An apparatus for wireless communication at a wireless device, including: means for transmitting an indication of a transmission puncturing scheme associated with a rateless coding of communications; and means for transmitting one or more signals associated with a message encoded in accordance with the rateless coding, where the transmitted one or more signals are associated with an encoding that corresponds to the indicated transmission puncturing scheme.

Aspect 57: The apparatus of aspect 56, where the means for transmitting the indication of the transmission puncturing scheme include: means for transmitting an indication of a pattern, over a set of multiple occasions of the transmission puncturing scheme, of a set of multiple coding indices of the rateless coding, each coding index of the set of multiple coding indices corresponding to a cumulative encoding of a respective quantity of message segments.

Aspect 58: The apparatus of aspect 57, where the means for transmitting the one or more signals associated with the message include: means for performing a first transmission, in accordance with a first occasion of the set of multiple occasions of the transmission puncturing scheme, that is associated one or more first coding indices of the set of multiple coding indices; and means for performing a second transmission, in accordance with a second occasion of the set of multiple occasions of the transmission puncturing scheme, that is associated with one or more second coding indices of the set of multiple coding indices that are different than the one or more first coding indices.

Aspect 59: The apparatus of aspect 58, where the one or more first coding indices include a first coding index corresponding to a cumulative encoding of a set of multiple segments associated with an entirety of the message and the one or more second coding indices include a second coding index corresponding to a cumulative encoding of a subset of the set of multiple segments.

Aspect 60: The apparatus of any of aspects 58 or 59, further including: means for receiving an indication of a coding index of the set of multiple coding indices that is associated with a decoding metric of a decoding attempt that satisfies a decoding metric threshold, where performing the second transmission is associated with receiving the indication of the coding index.

Aspect 61: The apparatus of aspect 60, further including: means for transmitting an indication to modify the pattern of the set of multiple coding indices in accordance with receiving the indication of the coding index that is associated with the decoding metric satisfying the decoding metric threshold.

Aspect 62: The apparatus of any of aspects 57-61, further including: means for transmitting a control message indicating one or more decoding hypotheses associated with one or more coding indices; and means for performing a transmission in accordance with an occasion of the transmission puncturing scheme corresponding to the one or more coding indices.

Aspect 63: The apparatus of aspect 62, where transmitting the control message and performing the transmission are based on identifying that the one or more decoding hypotheses associated with the one or more coding indices have an error probability that satisfies a threshold error probability.

Aspect 64: The apparatus of any of aspects 57-63, further including: means for encoding the one or more signals associated with the message in accordance with a coding index of the set of multiple coding indices corresponding to an occasion of the set of multiple occasions of the transmission puncturing scheme.

Aspect 65: The apparatus of aspect 64, where the means for the encoding include: means for obtaining, as an output of a hash function associated with the coding index corresponding to the occasion of the transmission puncturing scheme, an encoded value in accordance with inputting, into the hash function, a seed value and a bit value for one or more segments of the message that are associated with the coding index; means for obtaining, as an output of a numeric transposition function, a constellation point associated with the occasion of the transmission puncturing scheme in accordance with inputting, into the numeric transposition function, the encoded value; and means for mapping the constellation point to a communication resource for transmission.

Aspect 66: The apparatus of any of aspects 56-65, where the indication of the transmission puncturing scheme is transmitted via one or both of RRC signaling or DCI.

Aspect 67: A non-transitory computer-readable medium storing code for wireless communication at a wireless device, the code including instructions executable by a processor to: receive an indication of a transmission puncturing scheme associated with a rateless coding of communications; and receive one or more signals associated with a message encoded in accordance with the rateless coding, where the received one or more signals are associated with an encoding that corresponds to the indicated transmission puncturing scheme.

Aspect 68: The non-transitory computer-readable medium of aspect 67, where the instructions to receive the indication of the transmission puncturing scheme are executable by the processor to: receive an indication of a pattern, over a set of multiple occasions of the transmission puncturing scheme, of a set of multiple coding indices of the rateless coding, each coding index of the set of multiple coding indices corresponding to a cumulative encoding of a respective quantity of message segments.

Aspect 69: The non-transitory computer-readable medium of aspect 68, where the instructions to receive the one or more signals associated with the message are executable by the processor to: receive a first transmission, in accordance with a first occasion of the set of multiple occasions of the transmission puncturing scheme, that is associated with one or more first coding indices of the set of multiple coding indices; and receive a second transmission, in accordance with a second occasion of the set of multiple occasions of the transmission puncturing scheme, that is associated with one or more second coding indices of the set of multiple coding indices that are different than the one or more first coding indices.

Aspect 70: The non-transitory computer-readable medium of aspect 69, where the one or more first coding indices include a first coding index corresponding to a cumulative encoding of a set of multiple segments associated with an entirety of the message and the one or more second coding indices include a second coding index corresponding to a cumulative encoding of a subset of the set of multiple segments.

Aspect 71: The non-transitory computer-readable medium of any of aspects 69 or 70, where the instructions are further executable by the processor to: perform a decoding attempt for the received first transmission; and transmit an indication of a coding index of the set of multiple coding indices that is associated with a decoding metric of the decoding attempt that satisfies a decoding metric threshold, where the second transmission is associated with transmitting the indication of the coding index.

Aspect 72: The non-transitory computer-readable medium of aspect 71, where the instructions are further executable by the processor to: receive an indication to modify the pattern of the set of multiple coding indices in accordance with transmitting the indication of the coding index that is associated with the decoding metric satisfying the decoding metric threshold.

Aspect 73: The non-transitory computer-readable medium of any of aspects 69-72, where the instructions are further executable by the processor to: receive a control message indicating one or more decoding hypotheses associated with one or more coding indices; perform a decoding procedure on the received second transmission in accordance with the one or more decoding hypotheses associated with the one or more coding indices.

Aspect 74: The non-transitory computer-readable medium of any of aspects 68-73, where the instructions are further executable by the processor to: attempt to decode the one or more signals associated with the message in accordance with a coding index of the set of multiple coding indices corresponding to an occasion of the set of multiple occasions of the transmission puncturing scheme.

Aspect 75: The non-transitory computer-readable medium of aspect 74, where the instructions to attempt to decode the one or more signals are executable by the processor to: obtain, as an output of a hash function associated with the coding index corresponding to the occasion of the transmission puncturing scheme, a set of candidate encoded values in accordance with inputting, into the hash function, a seed value and a set of candidate bit values for one or more segments of the message that are associated with the coding index; obtain, as an output of a numeric transposition function, a set of candidate constellation points associated with the occasion of the transmission puncturing scheme in accordance with inputting, into the numeric transposition function, each of the set of candidate encoded values; compare a measurement of the one or more signals associated with the message with each constellation point of the set of candidate constellation points; and identify a constellation point from the set of candidate constellation points associated with a shortest Euclidean distance between the constellation point and the measurement of the one or more signals.

Aspect 76: The non-transitory computer-readable medium of any of aspects 74 or 75, where the instructions are further executable by the processor to: store, at the wireless device, one or more decoding hypotheses associated with one or more coding indices prior to the coding index corresponding to the occasion of the transmission puncturing scheme; and receive a transmission, in accordance with the occasion of the transmission puncturing scheme, that is associated with the coding index, where attempting to decode the one or more signals associated with the message in accordance with the coding index is associated with storing the one or more decoding hypotheses and receiving the transmission in accordance with the occasion of the transmission puncturing scheme.

Aspect 77: The non-transitory computer-readable medium of any of aspects 67-76, where the indication of the transmission puncturing scheme is received via one or both of RRC signaling or DCI.

Aspect 78: A non-transitory computer-readable medium storing code for wireless communication at a wireless device, the code including instructions executable by a processor to: transmit an indication of a transmission puncturing scheme associated with a rateless coding of communications; and transmit one or more signals associated with a message encoded in accordance with the rateless coding, where the transmitted one or more signals are associated with an encoding that corresponds to the indicated transmission puncturing scheme.

Aspect 79: The non-transitory computer-readable medium of aspect 78, where the instructions to transmit the indication of the transmission puncturing scheme are executable by the processor to: transmit an indication of a pattern, over a set of multiple occasions of the transmission puncturing scheme, of a set of multiple coding indices of the rateless coding, each coding index of the set of multiple coding indices corresponding to a cumulative encoding of a respective quantity of message segments.

Aspect 80: The non-transitory computer-readable medium of aspect 79, where the instructions to transmit the one or more signals associated with the message are executable by the processor to: perform a first transmission, in accordance with a first occasion of the set of multiple occasions of the transmission puncturing scheme, that is associated one or more first coding indices of the set of multiple coding indices; and perform a second transmission, in accordance with a second occasion of the set of multiple occasions of the transmission puncturing scheme, that is associated with one or more second coding indices of the set of multiple coding indices that are different than the one or more first coding indices.

Aspect 81: The non-transitory computer-readable medium of aspect 80, where the one or more first coding indices include a first coding index corresponding to a cumulative encoding of a set of multiple segments associated with an entirety of the message and the one or more second coding indices include a second coding index corresponding to a cumulative encoding of a subset of the set of multiple segments.

Aspect 82: The non-transitory computer-readable medium of any of aspects 80 or 81, where the instructions are further executable by the processor to: receive an indication of a coding index of the set of multiple coding indices that is associated with a decoding metric of a decoding attempt that satisfies a decoding metric threshold, where performing the second transmission is associated with receiving the indication of the coding index.

Aspect 83: The non-transitory computer-readable medium of aspect 82, where the instructions are further executable by the processor to: transmit an indication to modify the pattern of the set of multiple coding indices in accordance with receiving the indication of the coding index that is associated with the decoding metric satisfying the decoding metric threshold.

Aspect 84: The non-transitory computer-readable medium of any of aspects 79-83, where the instructions are further executable by the processor to: transmit a control message indicating one or more decoding hypotheses associated with one or more coding indices; and perform a transmission in accordance with an occasion of the transmission puncturing scheme corresponding to the one or more coding indices.

Aspect 85: The non-transitory computer-readable medium of aspect 84, where transmitting the control message and performing the transmission are based on identifying that the one or more decoding hypotheses associated with the one or more coding indices have an error probability that satisfies a threshold error probability.

Aspect 86: The non-transitory computer-readable medium of any of aspects 79-85, where the instructions are further executable by the processor to: encode the one or more signals associated with the message in accordance with a coding index of the set of multiple coding indices corresponding to an occasion of the set of multiple occasions of the transmission puncturing scheme.

Aspect 87: The non-transitory computer-readable medium of aspect 86, where the instructions to encode are executable by the processor to: obtain, as an output of a hash function associated with the coding index corresponding to the occasion of the transmission puncturing scheme, an encoded value in accordance with inputting, into the hash function, a seed value and a bit value for one or more segments of the message that are associated with the coding index; obtain, as an output of a numeric transposition function, a constellation point associated with the occasion of the transmission puncturing scheme in accordance with inputting, into the numeric transposition function, the encoded value; and map the constellation point to a communication resource for transmission.

Aspect 88: The non-transitory computer-readable medium of any of aspects 78-87, where the indication of the transmission puncturing scheme is transmitted via one or both of RRC signaling or DCI.

Aspect 89: An apparatus for wireless communication at a wireless device, including: a first interface configured to: obtain an indication of a transmission puncturing scheme associated with a rateless coding of communications; and obtain one or more signals associated with a message encoded in accordance with the rateless coding, where the obtained one or more signals are associated with an encoding that corresponds to the indicated transmission puncturing scheme.

Aspect 90: The apparatus of aspect 89, where, to obtain the indication of the transmission puncturing scheme, the first interface is further configured to: obtain an indication of a pattern, over a set of multiple occasions of the transmission puncturing scheme, of a set of multiple coding indices of the rateless coding, each coding index of the set of multiple coding indices corresponding to a cumulative encoding of a respective quantity of message segments.

Aspect 91: The apparatus of aspect 90, where, to obtain the one or more signals associated with the message, the first interface is further configured to: obtain a first transmission, in accordance with a first occasion of the set of multiple occasions of the transmission puncturing scheme, that is associated with one or more first coding indices of the set of multiple coding indices; and obtain a second transmission, in accordance with a second occasion of the set of multiple occasions of the transmission puncturing scheme, that is associated with one or more second coding indices of the set of multiple coding indices that are different than the one or more first coding indices.

Aspect 92: The apparatus of aspect 91, where the one or more first coding indices include a first coding index corresponding to a cumulative encoding of a set of multiple segments associated with an entirety of the message and the one or more second coding indices include a second coding index corresponding to a cumulative encoding of a subset of the set of multiple segments.

Aspect 93: The apparatus of any of aspects 91 or 92, further including: a processing system configured to: perform a decoding attempt for the obtained first transmission; and the first interface or a second interface configured to: output an indication of a coding index of the set of multiple coding indices that is associated with a decoding metric of the decoding attempt that satisfies a decoding metric threshold, where the second transmission is associated with outputting the indication of the coding index.

Aspect 94: The apparatus of aspect 93, where the first interface or the second interface are further configured to: obtain an indication to modify the pattern of the set of multiple coding indices in accordance with outputting the indication of the coding index that is associated with the decoding metric satisfying the decoding metric threshold.

Aspect 95: The apparatus of any of aspects 91-94, where: the first interface is further configured to: obtain a control message indicating one or more decoding hypotheses associated with one or more coding indices; and a processing system is configured to: perform a decoding procedure on the obtained second transmission in accordance with the one or more decoding hypotheses associated with the one or more coding indices.

Aspect 96: The apparatus of any of aspects 90-95, further including: a processing system configured to: attempt to decode the one or more signals associated with the message in accordance with a coding index of the set of multiple coding indices corresponding to an occasion of the set of multiple occasions of the transmission puncturing scheme.

Aspect 97: The apparatus of aspect 96, where, to attempt to decode the one or more signals, the processing system is further configured to: obtain, as an output of a hash function associated with the coding index corresponding to the occasion of the transmission puncturing scheme, a set of candidate encoded values in accordance with inputting, into the hash function, a seed value and a set of candidate bit values for one or more segments of the message that are associated with the coding index; obtain, as an output of a numeric transposition function, a set of candidate constellation points associated with the occasion of the transmission puncturing scheme in accordance with inputting, into the numeric transposition function, each of the set of candidate encoded values; compare a measurement of the one or more signals associated with the message with each constellation point of the set of candidate constellation points; and identify a constellation point from the set of candidate constellation points associated with a shortest Euclidean distance between the constellation point and the measurement of the one or more signals.

Aspect 98: The apparatus of any of aspects 96 or 97, where: the processing system is further configured to: store, at the wireless device, one or more decoding hypotheses associated with one or more coding indices prior to the coding index corresponding to the occasion of the transmission puncturing scheme; and the first interface is further configured to: obtain a transmission, in accordance with the occasion of the transmission puncturing scheme, that is associated with the coding index, where attempting to decode the one or more signals associated with the message in accordance with the coding index is associated with storing the one or more decoding hypotheses and obtaining the transmission in accordance with the occasion of the transmission puncturing scheme.

Aspect 99: The apparatus of any of aspects 89-98, where the indication of the transmission puncturing scheme is obtained via one or both of RRC signaling or DCI.

Aspect 100: An apparatus for wireless communication at a wireless device, including: a first interface configured to: output an indication of a transmission puncturing scheme associated with a rateless coding of communications; and output one or more signals associated with a message encoded in accordance with the rateless coding, where the output one or more signals are associated with an encoding that corresponds to the indicated transmission puncturing scheme.

Aspect 101: The apparatus of aspect 100, where, to output the indication of the transmission puncturing scheme, the first interface is further configured to: output an indication of a pattern, over a set of multiple occasions of the transmission puncturing scheme, of a set of multiple coding indices of the rateless coding, each coding index of the set of multiple coding indices corresponding to a cumulative encoding of a respective quantity of message segments.

Aspect 102: The apparatus of aspect 101, where, to output the one or more signals associated with the message, the first interface is further configured to: perform a first transmission, in accordance with a first occasion of the set of multiple occasions of the transmission puncturing scheme, that is associated one or more first coding indices of the set of multiple coding indices; and perform a second transmission, in accordance with a second occasion of the set of multiple occasions of the transmission puncturing scheme, that is associated with one or more second coding indices of the set of multiple coding indices that are different than the one or more first coding indices.

Aspect 103: The apparatus of aspect 102, where the one or more first coding indices include a first coding index corresponding to a cumulative encoding of a set of multiple segments associated with an entirety of the message and the one or more second coding indices include a second coding index corresponding to a cumulative encoding of a subset of the set of multiple segments.

Aspect 104: The apparatus of any of aspects 102 or 103, where the first interface or a second interface is configured to: obtain an indication of a coding index of the set of multiple coding indices that is associated with a decoding metric of a decoding attempt that satisfies a decoding metric threshold, where performing the second transmission is associated with obtaining the indication of the coding index.

Aspect 105: The apparatus of aspect 104, where the first interface or the second interface is further configured to: output an indication to modify the pattern of the set of multiple coding indices in accordance with obtaining the indication of the coding index that is associated with the decoding metric satisfying the decoding metric threshold.

Aspect 106: The apparatus of any of aspects 101-105, where the first interface is configured to: output a control message indicating one or more decoding hypotheses associated with one or more coding indices; and perform a transmission in accordance with an occasion of the transmission puncturing scheme corresponding to the one or more coding indices.

Aspect 107: The apparatus of aspect 106, where outputting the control message and performing the transmission are based on identifying that the one or more decoding hypotheses associated with the one or more coding indices have an error probability that satisfies a threshold error probability.

Aspect 108: The apparatus of any of aspects 101-107, further including: a processing system configured to: encode the one or more signals associated with the message in accordance with a coding index of the set of multiple coding indices corresponding to an occasion of the set of multiple occasions of the transmission puncturing scheme.

Aspect 109: The apparatus of aspect 108, where, to encode the one or more signals associated with the message, the processing system is further configured to: obtain, as an output of a hash function associated with the coding index corresponding to the occasion of the transmission puncturing scheme, an encoded value in accordance with inputting, into the hash function, a seed value and a bit value for one or more segments of the message that are associated with the coding index; obtain, as an output of a numeric transposition function, a constellation point associated with the occasion of the transmission puncturing scheme in accordance with inputting, into the numeric transposition function, the encoded value; and map the constellation point to a communication resource for transmission.

Aspect 110: The apparatus of any of aspects 100-109, where the indication of the transmission puncturing scheme is output via one or both of RRC signaling or DCI.

As used herein, the term “determine” or “determining” encompasses a wide variety of actions and, therefore, “determining” can include calculating, computing, processing, deriving, investigating, looking up (such as via looking up in a table, a database or another data structure), inferring, ascertaining, and the like. Also, “determining” can include receiving (such as receiving information), accessing (such as accessing data in a memory) and the like. Also, “determining” can include resolving, selecting, choosing, establishing and other such similar actions.

As used herein, a phrase referring to “at least one of” a list of items refers to any combination of those items, including single members. As an example, “at least one of: a, b, or c” is intended to cover: a, b, c, a-b, a-c, b-c, and a-b-c.

The various illustrative logics, logical blocks, modules, circuits and algorithm processes described in connection with the implementations disclosed herein may be implemented as electronic hardware, computer software, or combinations of both. The interchangeability of hardware and software has been described generally, in terms of functionality, and illustrated in the various illustrative components, blocks, modules, circuits and processes described herein. Whether such functionality is implemented in hardware or software depends upon the particular application and design constraints imposed on the overall system.

The hardware and data processing apparatus used to implement the various illustrative logics, logical blocks, modules and circuits described in connection with the aspects disclosed herein may be implemented or performed with a general purpose single- or multi-chip processor, a digital signal processor (DSP), an application specific integrated circuit (ASIC), a field programmable gate array (FPGA) or other programmable logic device, discrete gate or transistor logic, discrete hardware components, or any combination thereof designed to perform the functions described herein. A general-purpose processor may be a microprocessor, or any processor, controller, microcontroller, or state machine. A processor also may be implemented as a combination of computing devices, such as a combination of a DSP and a microprocessor, a plurality of microprocessors, one or more microprocessors in conjunction with a DSP core, or any other such configuration. In some implementations, particular processes and methods may be performed by circuitry that is specific to a given function.

In one or more aspects, the functions described may be implemented in hardware, digital electronic circuitry, computer software, firmware, including the structures disclosed in this specification and their structural equivalents thereof, or in any combination thereof. Implementations of the subject matter described in this specification also can be implemented as one or more computer programs, such as one or more modules of computer program instructions, encoded on a computer storage media for execution by, or to control the operation of, data processing apparatus.

If implemented in software, the functions may be stored on or transmitted over as one or more instructions or code on a computer-readable medium. The processes of a method or algorithm disclosed herein may be implemented in a processor-executable software module which may reside on a computer-readable medium. Computer-readable media includes both computer storage media and communication media including any medium that can be enabled to transfer a computer program from one place to another. A storage media may be any available media that may be accessed by a computer. By way of example, and not limitation, such computer-readable media may include RAM, ROM, EEPROM, CD-ROM or other optical disk storage, magnetic disk storage or other magnetic storage devices, or any other medium that may be used to store desired program code in the form of instructions or data structures and that may be accessed by a computer. Also, any connection can be properly termed a computer-readable medium. Disk and disc, as used herein, includes compact disc (CD), laser disc, optical disc, digital versatile disc (DVD), floppy disk, and Blu-ray disc where disks usually reproduce data magnetically, while discs reproduce data optically with lasers. Combinations of the above should also be included within the scope of computer-readable media. Additionally, the operations of a method or algorithm may reside as one or any combination or set of codes and instructions on a machine readable medium and computer-readable medium, which may be incorporated into a computer program product.

Various modifications to the implementations described in this disclosure may be readily apparent to those skilled in the art, and the generic principles defined herein may be applied to other implementations without departing from the spirit or scope of this disclosure. Thus, the claims are not intended to be limited to the implementations shown herein, but are to be accorded the widest scope consistent with this disclosure, the principles and the features disclosed herein.

Additionally, a person having ordinary skill in the art will readily appreciate, the terms “upper” and “lower” are sometimes used for ease of describing the figures, and indicate relative positions corresponding to the orientation of the figure on a properly oriented page, and may not reflect the proper orientation of any device as implemented.

Certain features that are described in this specification in the context of separate implementations also can be implemented in combination in a single implementation. Conversely, various features that are described in the context of a single implementation also can be implemented in multiple implementations separately or in any suitable subcombination. Moreover, although features may be described herein as acting in some combinations and even initially claimed as such, one or more features from a claimed combination can be excised from the combination, and the claimed combination may be directed to a subcombination or variation of a subcombination.

Similarly, while operations are depicted in the drawings in a particular order, this should not be understood as requiring that such operations be performed in the particular order shown or in sequential order, or that all illustrated operations be performed, to achieve desirable results. Further, the drawings may schematically depict one more example processes in the form of a flow diagram. However, other operations that are not depicted can be incorporated in the example processes that are schematically illustrated. For example, one or more additional operations can be performed before, after, simultaneously, or between any of the illustrated operations. In some circumstances, multitasking and parallel processing may be advantageous. Moreover, the separation of various system components in the implementations described herein should not be understood as requiring such separation in all implementations, and it should be understood that the described program components and systems can generally be integrated together in a single software product or packaged into multiple software products. Additionally, other implementations are within the scope of the following claims. In some implementations, the actions recited in the claims can be performed in a different order and still achieve desirable results. 

What is claimed is:
 1. An apparatus for wireless communication at a wireless device, comprising: a first interface configured to: obtain an indication of a transmission puncturing scheme associated with a rateless coding of communications, the indication of the transmission puncturing scheme comprising an indication of a pattern, over a plurality of occasions of the transmission puncturing scheme, of a plurality of coding indices of the rateless coding, each coding index of the plurality of coding indices corresponding to a cumulative encoding of a respective quantity of message segments; and obtain one or more signals associated with a message encoded in accordance with the rateless coding, wherein the obtained one or more signals are associated with an encoding that corresponds to the indicated transmission puncturing scheme.
 2. The apparatus of claim 1, wherein, to obtain the one or more signals associated with the message, the first interface is further configured to: obtain a first transmission, in accordance with a first occasion of the plurality of occasions of the transmission puncturing scheme, that is associated with one or more first coding indices of the plurality of coding indices; and obtain a second transmission, in accordance with a second occasion of the plurality of occasions of the transmission puncturing scheme, that is associated with one or more second coding indices of the plurality of coding indices that are different than the one or more first coding indices.
 3. The apparatus of claim 2, wherein the one or more first coding indices include a first coding index corresponding to a cumulative encoding of a plurality of segments associated with an entirety of the message and the one or more second coding indices include a second coding index corresponding to a cumulative encoding of a subset of the plurality of segments.
 4. The apparatus of claim 2, further comprising: a processing system configured to: perform a decoding attempt for the obtained first transmission; and the first interface or a second interface configured to: output an indication of a coding index of the plurality of coding indices that is associated with a decoding metric of the decoding attempt that satisfies a decoding metric threshold, wherein the second transmission is associated with outputting the indication of the coding index.
 5. The apparatus of claim 4, wherein the first interface or the second interface are further configured to: obtain an indication to modify the pattern of the plurality of coding indices in accordance with outputting the indication of the coding index that is associated with the decoding metric satisfying the decoding metric threshold.
 6. The apparatus of claim 2, wherein: the first interface is further configured to: obtain a control message indicating one or more decoding hypotheses associated with one or more coding indices; and a processing system is configured to: perform a decoding procedure on the obtained second transmission in accordance with the one or more decoding hypotheses associated with the one or more coding indices.
 7. The apparatus of claim 1, further comprising: a processing system configured to: attempt to decode the one or more signals associated with the message in accordance with a coding index of the plurality of coding indices corresponding to an occasion of the plurality of occasions of the transmission puncturing scheme.
 8. The apparatus of claim 7, wherein, to attempt to decode the one or more signals, the processing system is further configured to: obtain, as an output of a hash function associated with the coding index corresponding to the occasion of the transmission puncturing scheme, a set of candidate encoded values in accordance with inputting, into the hash function, a seed value and a set of candidate bit values for one or more segments of the message that are associated with the coding index; obtain, as an output of a numeric transposition function, a set of candidate constellation points associated with the occasion of the transmission puncturing scheme in accordance with inputting, into the numeric transposition function, each of the set of candidate encoded values; compare a measurement of the one or more signals associated with the message with each constellation point of the set of candidate constellation points; and identify a constellation point from the set of candidate constellation points associated with a shortest Euclidean distance between the constellation point and the measurement of the one or more signals.
 9. The apparatus of claim 7, wherein: the processing system is further configured to: store, at the wireless device, one or more decoding hypotheses associated with one or more coding indices prior to the coding index corresponding to the occasion of the transmission puncturing scheme; and the first interface is further configured to: obtain a transmission, in accordance with the occasion of the transmission puncturing scheme, that is associated with the coding index, wherein attempting to decode the one or more signals associated with the message in accordance with the coding index is associated with storing the one or more decoding hypotheses and obtaining the transmission in accordance with the occasion of the transmission puncturing scheme.
 10. The apparatus of claim 1, wherein the indication of the transmission puncturing scheme is obtained via one or both of radio resource control (RRC) signaling or downlink control information (DCI).
 11. An apparatus for wireless communication at a wireless device, comprising: a first interface configured to: output an indication of a transmission puncturing scheme associated with a rateless coding of communications, the indication of the transmission puncturing scheme comprising an indication of a pattern, over a plurality of occasions of the transmission puncturing scheme, of a plurality of coding indices of the rateless coding, each coding index of the plurality of coding indices corresponding to a cumulative encoding of a respective quantity of message segments; and output one or more signals associated with a message encoded in accordance with the rateless coding, wherein the output one or more signals are associated with an encoding that corresponds to the indicated transmission puncturing scheme.
 12. The apparatus of claim 11, wherein, to output the one or more signals associated with the message, the first interface is further configured to: perform a first transmission, in accordance with a first occasion of the plurality of occasions of the transmission puncturing scheme, that is associated one or more first coding indices of the plurality of coding indices; and perform a second transmission, in accordance with a second occasion of the plurality of occasions of the transmission puncturing scheme, that is associated with one or more second coding indices of the plurality of coding indices that are different than the one or more first coding indices.
 13. The apparatus of claim 12, wherein the one or more first coding indices include a first coding index corresponding to a cumulative encoding of a plurality of segments associated with an entirety of the message and the one or more second coding indices include a second coding index corresponding to a cumulative encoding of a subset of the plurality of segments.
 14. The apparatus of claim 12, wherein the first interface or a second interface is configured to: obtain an indication of a coding index of the plurality of coding indices that is associated with a decoding metric of a decoding attempt that satisfies a decoding metric threshold, wherein performing the second transmission is associated with obtaining the indication of the coding index.
 15. The apparatus of claim 14, wherein the first interface or the second interface is further configured to: output an indication to modify the pattern of the plurality of coding indices in accordance with obtaining the indication of the coding index that is associated with the decoding metric satisfying the decoding metric threshold.
 16. The apparatus of claim 11, wherein the first interface is configured to: output a control message indicating one or more decoding hypotheses associated with one or more coding indices; and perform a transmission in accordance with an occasion of the transmission puncturing scheme corresponding to the one or more coding indices.
 17. The apparatus of claim 16, wherein outputting the control message and performing the transmission are associated with identifying that the one or more decoding hypotheses associated with the one or more coding indices have an error probability that satisfies a threshold error probability.
 18. The apparatus of claim 11, further comprising: a processing system configured to: encode the one or more signals associated with the message in accordance with a coding index of the plurality of coding indices corresponding to an occasion of the plurality of occasions of the transmission puncturing scheme.
 19. The apparatus of claim 18, wherein, to encode the one or more signals associated with the message, the processing system is further configured to: obtain, as an output of a hash function associated with the coding index corresponding to the occasion of the transmission puncturing scheme, an encoded value in accordance with inputting, into the hash function, a seed value and a bit value for one or more segments of the message that are associated with the coding index; obtain, as an output of a numeric transposition function, a constellation point associated with the occasion of the transmission puncturing scheme in accordance with inputting, into the numeric transposition function, the encoded value; and map the constellation point to a communication resource for transmission.
 20. The apparatus of claim 11, wherein the indication of the transmission puncturing scheme is output via one or both of radio resource control (RRC) signaling or downlink control information (DCI).
 21. A method for wireless communication at a wireless device, comprising: receiving an indication of a transmission puncturing scheme associated with a rateless coding of communications, the indication of the transmission puncturing scheme comprising an indication of a pattern, over a plurality of occasions of the transmission puncturing scheme, of a plurality of coding indices of the rateless coding, each coding index of the plurality of coding indices corresponding to a cumulative encoding of a respective quantity of message segments; and receiving one or more signals associated with a message encoded in accordance with the rateless coding, wherein the received one or more signals are associated with an encoding that corresponds to the indicated transmission puncturing scheme.
 22. The method of claim 21, wherein receiving the one or more signals associated with the message comprises: receiving a first transmission, in accordance with a first occasion of the plurality of occasions of the transmission puncturing scheme, that is associated with one or more first coding indices of the plurality of coding indices; and receiving a second transmission, in accordance with a second occasion of the plurality of occasions of the transmission puncturing scheme, that is associated with one or more second coding indices of the plurality of coding indices that are different than the one or more first coding indices.
 23. The method of claim 22, further comprising: performing a decoding attempt for the received first transmission; and transmitting an indication of a coding index of the plurality of coding indices that is associated with a decoding metric of the decoding attempt that satisfies a decoding metric threshold, wherein the second transmission is associated with transmitting the indication of the coding index.
 24. A method for wireless communication at a wireless device, comprising: transmitting an indication of a transmission puncturing scheme associated with a rateless coding of communications, the indication of the transmission puncturing scheme comprising an indication of a pattern, over a plurality of occasions of the transmission puncturing scheme, of a plurality of coding indices of the rateless coding, each coding index of the plurality of coding indices corresponding to a cumulative encoding of a respective quantity of message segments; and transmitting one or more signals associated with a message encoded in accordance with the rateless coding, wherein the transmitted one or more signals are associated with an encoding that corresponds to the indicated transmission puncturing scheme.
 25. The method of claim 24, wherein transmitting the one or more signals associated with the message comprises: performing a first transmission, in accordance with a first occasion of the plurality of occasions of the transmission puncturing scheme, that is associated one or more first coding indices of the plurality of coding indices; and performing a second transmission, in accordance with a second occasion of the plurality of occasions of the transmission puncturing scheme, that is associated with one or more second coding indices of the plurality of coding indices that are different than the one or more first coding indices. 